Template Struct Process¶
Defined in File Process.hpp
Struct Documentation¶
-
template<typename
physics_t
, typenameinput_selector_t
= EveryInput, typenameoutput_particle_selector_t
= EveryParticle, typenamechild_particle_selector_t
= output_particle_selector_t>
structActsFatras
::
Process
¶ A simulation process based on a physics interaction plus selectors.
The input selector defines whether the interaction is applied while the output selector defines a break condition, i.e. whether to continue simulating the particle propagation. The child selector is used to filter the generated child particles.
- Template Parameters
physics_t
: is the physics interaction typeinput_selector_t
: is the input material + particle selectoroutput_particle_selector_t
: is the output particle selectorchild_particle_selector_t
: is the child particle selector
- Note
The output and child particle selectors are identical unless the child particle selector is explicitely specified.
Public Functions
-
template<typename
generator_t
>
booloperator()
(generator_t &generator, const Acts::MaterialSlab &slab, Particle &particle, std::vector<Particle> &generated) const¶ Execute the physics process considering the configured selectors.
- Return
Break condition, i.e. whether this process stops the propagation
- Parameters
[in] generator
: is the random number generator[in] slab
: is the passed material[inout] particle
: is the particle being updated[out] generated
: is the container of generated particles
- Template Parameters
generator_t
: must be a RandomNumberEngine
Public Members
-
child_particle_selector_t
selectChildParticle
¶ Child selection: if a generated child particle should be kept.
-
input_selector_t
selectInput
¶ Input selection: if this process applies to material + particle.
-
output_particle_selector_t
selectOutputParticle
¶ Output selection: if the particle is still valid after the interaction.