Go to the documentation of this file.
2 #ifndef MaterialEffects_h
3 #define MaterialEffects_h
double thickness() const
Return the thickness of the current layer.
double radLengths(const TrackerLayer &layer, ParticlePropagator &myTrack)
The number of radiation lengths traversed.
MultipleScatteringSimulator * MultipleScattering
PairProductionSimulator * PairProduction
MuonBremsstrahlungSimulator * muonBremsstrahlungSimulator() const
Return the Muon Bremsstrahlung engine.
double energyLoss() const
Return the energy loss by ionization in the current layer.
void interact(FSimEvent &simEvent, const TrackerLayer &layer, ParticlePropagator &PP, unsigned i, RandomEngineAndDistribution const *)
~MaterialEffects()
Default destructor.
EnergyLossSimulator * energyLossSimulator() const
Return the Energy Loss engine.
GlobalVector theNormalVector
constexpr std::array< uint8_t, layerIndexSize > layer
MaterialEffects(const edm::ParameterSet &matEff)
Constructor.
MuonBremsstrahlungSimulator * MuonBremsstrahlung
GlobalVector normalVector(const TrackerLayer &layer, ParticlePropagator &myTrack) const
The vector normal to the surface traversed.
void save()
Save nuclear interaction information.
BremsstrahlungSimulator * Bremsstrahlung
MultipleScatteringSimulator * multipleScatteringSimulator() const
Return the Multiple Scattering engine.
EnergyLossSimulator * EnergyLoss
MaterialEffectsSimulator * NuclearInteraction