#include <EnergyLossSimulator.h>
Public Member Functions | |
const XYZTLorentzVector & | deltaMom () const |
Returns the actual energy lost. More... | |
EnergyLossSimulator (double A, double Z, double density, double radLen) | |
Constructor. More... | |
double | mostLikelyLoss () const |
Return most probable energy loss. More... | |
~EnergyLossSimulator () | |
Default Destructor. More... | |
Public Member Functions inherited from MaterialEffectsSimulator | |
RHEP_const_iter | beginDaughters () const |
Returns const iterator to the beginning of the daughters list. More... | |
int | closestDaughterId () |
The id of the closest charged daughter (filled for nuclear interactions only) More... | |
double | eMass () const |
Electron mass in GeV/c2. More... | |
RHEP_const_iter | endDaughters () const |
Returns const iterator to the end of the daughters list. More... | |
double | excitE () const |
Mean excitation energy (in GeV) More... | |
MaterialEffectsSimulator (double A=28.0855, double Z=14.0000, double density=2.329, double radLen=9.360) | |
unsigned | nDaughters () const |
Returns the number of daughters. More... | |
XYZVector | orthogonal (const XYZVector &) const |
A vector orthogonal to another one (because it's not in XYZTLorentzVector) More... | |
double | radLenIncm () const |
One radiation length in cm. More... | |
double | rho () const |
Density in g/cm3. More... | |
void | setNormalVector (const GlobalVector &normal) |
Sets the vector normal to the surface traversed. More... | |
double | theA () const |
A. More... | |
double | theZ () const |
Z. More... | |
void | updateState (ParticlePropagator &myTrack, double radlen, RandomEngineAndDistribution const *) |
Compute the material effect (calls the sub class) More... | |
virtual | ~MaterialEffectsSimulator () |
Private Member Functions | |
void | compute (ParticlePropagator &Particle, RandomEngineAndDistribution const *) |
The real dE/dx generation and particle update. More... | |
Private Attributes | |
XYZTLorentzVector | deltaP |
The actual energy loss. More... | |
double | mostProbableLoss |
The most probable enery loss. More... | |
LandauFluctuationGenerator * | theGenerator |
The Landau Fluctuation generator. More... | |
Additional Inherited Members | |
Public Types inherited from MaterialEffectsSimulator | |
typedef std::vector < RawParticle > ::const_iterator | RHEP_const_iter |
Protected Attributes inherited from MaterialEffectsSimulator | |
std::vector< RawParticle > | _theUpdatedState |
double | A |
double | density |
double | radLen |
double | radLengths |
int | theClosestChargedDaughterId |
GlobalVector | theNormalVector |
double | Z |
Definition at line 26 of file EnergyLossSimulator.h.
EnergyLossSimulator::EnergyLossSimulator | ( | double | A, |
double | Z, | ||
double | density, | ||
double | radLen | ||
) |
Constructor.
Definition at line 7 of file EnergyLossSimulator.cc.
References theGenerator.
EnergyLossSimulator::~EnergyLossSimulator | ( | ) |
Default Destructor.
Definition at line 13 of file EnergyLossSimulator.cc.
References theGenerator.
|
privatevirtual |
The real dE/dx generation and particle update.
Implements MaterialEffectsSimulator.
Definition at line 20 of file EnergyLossSimulator.cc.
References RawParticle::charge(), deltaP, reco::e2, MaterialEffectsSimulator::eMass(), MaterialEffectsSimulator::excitE(), LandauFluctuationGenerator::landau(), fff_deleter::log, RawParticle::mass(), max(), mostProbableLoss, p2, MaterialEffectsSimulator::radLengths, MaterialEffectsSimulator::radLenIncm(), MaterialEffectsSimulator::rho(), mathSSE::sqrt(), MaterialEffectsSimulator::theA(), theGenerator, and MaterialEffectsSimulator::theZ().
|
inline |
Returns the actual energy lost.
Definition at line 40 of file EnergyLossSimulator.h.
References deltaP.
Referenced by MuonSimHitProducer::applyMaterialEffects(), and CalorimetryManager::MuonMipSimulation().
|
inline |
Return most probable energy loss.
Definition at line 37 of file EnergyLossSimulator.h.
References mostProbableLoss.
Referenced by MuonSimHitProducer::applyMaterialEffects().
|
private |
The actual energy loss.
Definition at line 53 of file EnergyLossSimulator.h.
Referenced by compute(), and deltaMom().
|
private |
The most probable enery loss.
Definition at line 50 of file EnergyLossSimulator.h.
Referenced by compute(), and mostLikelyLoss().
|
private |
The Landau Fluctuation generator.
Definition at line 44 of file EnergyLossSimulator.h.
Referenced by compute(), EnergyLossSimulator(), and ~EnergyLossSimulator().