Class AccumulatedMaterialProperties¶
Defined in File AccumulatedMaterialProperties.hpp
Class Documentation¶
-
class
Acts
::
AccumulatedMaterialProperties
¶ AccumulatedMaterialProperties.
This class uses the MaterialProperties class and adds the necessary information for the SurfaceMaterial Mapper.
There are two stores for material averaging:
the event store collects material steps accumulated during an event. Material can be assigned to the same bin multiple time by one particle, e.g. if the simulation had created more than one step in the material, or if several components are compressed into one description
the total store collects accumulated material properties of the run, at the end of a run, an average over the material information from all mapped events per bin is taken.
The averaging is always done to unit thickness
Public Functions
-
AccumulatedMaterialProperties
() = default¶ Default constructor sets everything to zero.
-
AccumulatedMaterialProperties
(const AccumulatedMaterialProperties &) = default¶ Default copy constructor.
- Parameters
amp
: the source Accumulated properties
-
AccumulatedMaterialProperties
(AccumulatedMaterialProperties &&) = default¶ Default copy move constructor.
- Parameters
amp
: the source Accumulated properties
-
~AccumulatedMaterialProperties
() = default¶ Default destructor sets.
-
void
accumulate
(const MaterialProperties &, double pathCorrection = 1.)¶ Accumulation operator.
this adds the material properties to event store
MaterialProperties accumulation is done as follows:
t/X0 and l/X0 are additive
rho is averaged by the total thickness per event
A,Z is averaged by the sum(rho*thickness) per event
Vacuum steps with step length different from zero are also used in order to count for holes in material structures
- Parameters
amp
: the source Accumulated propertiespathCorreciton
: is the correction to nominal incident
-
AccumulatedMaterialProperties &
operator=
(const AccumulatedMaterialProperties &) = default¶ Default assignment operator.
- Parameters
amp
: the source Accumulated properties
-
AccumulatedMaterialProperties &
operator=
(AccumulatedMaterialProperties &&) = default¶ Default move assignment operator.
- Parameters
amp
: the source Accumulated properties
-
std::pair<MaterialProperties, unsigned int>
totalAverage
()¶ Average the information accumulated during the entire mapping process.
The total average takesthe full run into account
- Return
the total avarage material properties and the total events used for mapping these properties The latter can be used when parallelising the mapping to several jobs
-
void
trackAverage
(bool emptyHit = false)¶ Average the information accumulated for one track.
in case of an empty hit this will just increase the event counter
- Parameters
emtpyHit
: indicate an empty hit