|
ACTS
Experiment-independent tracking
|
VolumeMaterialMapper. More...
#include <Acts/Material/VolumeMaterialMapper.hpp>
Classes | |
| struct | Config |
| Nested Configuration struct for the material mapper. More... | |
| struct | State |
| Nested State struct which is used for the mapping prococess. More... | |
Public Types | |
| using | StraightLinePropagator = Propagator<StraightLineStepper, Navigator> |
| Type alias for straight line propagator used in material mapping. | |
Public Member 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. | |
| State | createState (const GeometryContext &gctx, const MagneticFieldContext &mctx, const TrackingGeometry &tGeometry) const |
| helper method that creates the cache for the mapping | |
| void | finalizeMaps (State &mState) const |
| Method to finalize the maps. | |
| void | mapMaterialTrack (State &mState, RecordedMaterialTrack &mTrack) const |
| Process/map a single track. | |
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::GeometryIdentifier
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
| using Acts::VolumeMaterialMapper::StraightLinePropagator = Propagator<StraightLineStepper, Navigator> |
Type alias for straight line propagator used in material mapping.
|
delete |
Delete the Default constructor.
| Acts::VolumeMaterialMapper::VolumeMaterialMapper | ( | const Config & | cfg, |
| StraightLinePropagator | propagator, | ||
| std::unique_ptr< const Logger > | slogger = getDefaultLogger("VolumeMaterialMapper", Logging::INFO) ) |
Constructor with config object.
| cfg | Configuration struct |
| propagator | The straight line propagator |
| slogger | The logger |
| State Acts::VolumeMaterialMapper::createState | ( | const GeometryContext & | gctx, |
| const MagneticFieldContext & | mctx, | ||
| const TrackingGeometry & | tGeometry ) const |
helper method that creates the cache for the mapping
| [in] | gctx | The geometry context to use |
| [in] | mctx | The magnetic field context to use |
| [in] | tGeometry | The geometry which should be mapped |
This method takes a TrackingGeometry, finds all surfaces with material proxis and returns you a Cache object tO be used
| void Acts::VolumeMaterialMapper::finalizeMaps | ( | State & | mState | ) | const |
Method to finalize the maps.
It calls the final run averaging and then transforms the Homogeneous material into HomogeneousVolumeMaterial and the 2D and 3D grid into a InterpolatedMaterialMap
| mState |
| void Acts::VolumeMaterialMapper::mapMaterialTrack | ( | State & | mState, |
| RecordedMaterialTrack & | mTrack ) const |
Process/map a single track.
| mState | The current state map |
| mTrack | The material track to be mapped |