Field Service¶
Framework-agnostic C++20 library exposing the SHiP magnetic field maps to simulation (aegir) and reconstruction (Trout).
Repository: ShipSoft/field_service
API reference: Doxygen
Field maps¶
Maps are stored in the
SHiP field-map format,
a versioned ROOT RNTuple layout, and evaluated with
covfie (trilinear interpolation on
a regular grid). A bare map filename is resolved against
$SHIPFIELD_ROOT/share/field/.
Components¶
| Component | Conda package | CMake target | Needs |
|---|---|---|---|
| Core: evaluators from in-memory maps | field-service-core |
SHiP::FieldService |
nothing from ROOT or Geant4 |
MapIO: read and write map files, FieldMapSource |
field-service-mapio |
SHiP::FieldServiceMapIO |
ROOT |
G4Adapter: G4MagFieldAdapter |
field-service-g4 |
SHiP::FieldServiceG4Adapter |
Geant4 |
ActsAdapter: ActsFieldAdapter |
field-service-acts |
SHiP::FieldServiceActsAdapter |
ACTS |
Request the components you need, e.g.
find_package(SHiPFieldService REQUIRED COMPONENTS G4Adapter MapIO) in aegir
or COMPONENTS MapIO ActsAdapter in Trout. All packages are on
prefix.dev/ship-experiment/stable.
Tools¶
The field-service-tools package ships:
fairship_to_fieldmapconverts FairShip's legacy ROOT field maps (use--symmetry quadrant_dipolefor quadrant-symmetric maps);fieldmap_dumpprints map metadata or evaluates a map at points read from stdin;generate_constant_fieldmapwrites a uniform map for closure tests;plot_field_mapplots a map as ROOT histograms and PDFs.