CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
EnergyLossSimulator.h
Go to the documentation of this file.
1 #ifndef ENERGYLOSSSIMULATOR_H
2 #define ENERGYLOSSSIMULATOR_H
3 
5 
24 
26 public:
28  EnergyLossSimulator(double A, double Z, double density, double radLen);
29 
31  ~EnergyLossSimulator() override;
32 
34  inline double mostLikelyLoss() const { return mostProbableLoss; }
35 
37  inline const XYZTLorentzVector& deltaMom() const { return deltaP; }
38 
39 private:
42 
44  void compute(ParticlePropagator& Particle, RandomEngineAndDistribution const*) override;
45 
48 
51 };
52 
53 #endif
double mostLikelyLoss() const
Return most probable energy loss.
~EnergyLossSimulator() override
Default Destructor.
double mostProbableLoss
The most probable enery loss.
const XYZTLorentzVector & deltaMom() const
Returns the actual energy lost.
LandauFluctuationGenerator * theGenerator
The Landau Fluctuation generator.
EnergyLossSimulator(double A, double Z, double density, double radLen)
Constructor.
void compute(ParticlePropagator &Particle, RandomEngineAndDistribution const *) override
The real dE/dx generation and particle update.
XYZTLorentzVector deltaP
The actual energy loss.
math::XYZTLorentzVector XYZTLorentzVector
Definition: RawParticle.h:25