Geometry¶
The SHiP detector geometry, implemented in C++23 with GeoModel. The simulation, digitisation and reconstruction packages all read it, either directly or through the Geometry Service.
Repository: ShipSoft/Geometry
API reference: Doxygen
Building the geometry database¶
git clone https://github.com/ShipSoft/Geometry.git
cd Geometry
pixi run test # configure, build and run the unit tests
pixi run geometry # write build/ship_geometry.db
pixi run gdml # convert it to build/ship_geometry.gdml
Open the .db file in gmex to browse the geometry.
Conventions¶
- Origin at the target front face (first tungsten disk).
- z along the beam (positive downstream), y vertical (up), x completing a right-handed system.
- Lengths in mm, angles in radians. The beam axis is 1.7 m above the floor.
Each subsystem is a factory class under subsystems/<Name>/, placed by
SHiPGeometryBuilder::build(). The repository README has the
status table
for each subsystem and the steps to add or modify one.
Using it¶
The conda package is shipgeometry on
prefix.dev/ship-experiment/stable. In CMake: