Class VolumeMaterialMapper¶
Defined in File VolumeMaterialMapper.hpp
Nested Relationships¶
Class Documentation¶
-
class
Acts
::
VolumeMaterialMapper
¶ VolumeMaterialMapper.
This is the main feature tool to map material information from a 3D geometry onto the TrackingGeometry with its surface material description.
The process runs as such:
1) TrackingGeometry is parsed and for each Volume with ProtoVolumeMaterial a local store is initialized the identification is done hereby through the Volume::GeometryID
2) A number of N material tracks is read in, each track has : origin, direction, material steps (< position, step length, x0, l0, a, z, rho >, thichness)
for each track: volume along the origin/direction path are collected. the step are then associated to volume inside which they are. Additional step are created along the track direction.
3) Each ‘hit’ bin per event is counted and averaged at the end of the run
Public Types
-
using
StraightLinePropagator
= Propagator<StraightLineStepper, Navigator>¶
Public Functions
-
VolumeMaterialMapper
() = delete¶ Delete the Default constructor.
-
VolumeMaterialMapper
(const Config &cfg, StraightLinePropagator propagator, std::unique_ptr<const Logger> slogger = getDefaultLogger("VolumeMaterialMapper", Logging::INFO))¶ Constructor with config object.
- Parameters
cfg
: Configuration structpropagator
: The straight line propagatorlog
: The logger
-
State
createState
(const GeometryContext &gctx, const MagneticFieldContext &mctx, const TrackingGeometry &tGeometry) const¶ helper method that creates the cache for the mapping
This method takes a TrackingGeometry, finds all surfaces with material proxis and returns you a Cache object tO be used
- Parameters
[in] tGeometry
: The geometry which should be mapped
-
void
finalizeMaps
(State &mState) const¶ Method to finalize the maps.
It calls the final run averaging and then transforms the AccumulatedVolume material class to a surface material class type
- Parameters
mState
:
-
void
mapMaterialTrack
(State &mState, RecordedMaterialTrack &mTrack) const¶ Process/map a single track.
- Note
the RecordedMaterialProperties of the track are assumed to be ordered from the starting position along the starting direction
- Parameters
mState
: The current state mapmTrack
: The material track to be mapped
-
struct
Config
¶ Nested Configuration struct for the material mapper.
-
struct
MaterialVolume
¶ selector for finding
Public Functions
-
bool
operator()
(const TrackingVolume &vf) const¶
-
bool
-
struct
State
¶ Nested State struct which is used for the mapping prococess.
Public Functions
-
State
(std::reference_wrapper<const GeometryContext> gctx, std::reference_wrapper<const MagneticFieldContext> mctx)¶ Constructor of the Sate with contexts.
Public Members
-
std::reference_wrapper<const GeometryContext>
geoContext
¶ Reference to the geometry context for the mapping.
-
std::reference_wrapper<const MagneticFieldContext>
magFieldContext
¶ Reference to the magnetic field context.
-
std::map<GeometryID, BinUtility>
materialBin
¶ The binning per geometry ID.
-
std::map<GeometryID, RecordedMaterialPoint>
recordedMaterial
¶ The recorded material per geometry ID.
-
std::map<GeometryID, std::shared_ptr<const ISurfaceMaterial>>
surfaceMaterial
¶ The surface material of the input tracking geometry.
-
std::map<GeometryID, std::unique_ptr<const IVolumeMaterial>>
volumeMaterial
¶ The created volume material from it.
-
-
using