CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EnergyLossSimulator.h
Go to the documentation of this file.
1 #ifndef ENERGYLOSSSIMULATOR_H
2 #define ENERGYLOSSSIMULATOR_H
3 
5 
23 class RandomEngine;
25 
27 {
28  public:
29 
31  EnergyLossSimulator(const RandomEngine* engine,
32  double A, double Z, double density, double radLen);
33 
36 
38  inline double mostLikelyLoss() const { return mostProbableLoss; }
39 
41  inline const XYZTLorentzVector& deltaMom() const { return deltaP; }
42 
43  private:
46 
48  void compute(ParticlePropagator &Particle);
49 
52 
55 
56 };
57 
58 #endif
double mostLikelyLoss() const
Return most probable energy loss.
EnergyLossSimulator(const RandomEngine *engine, double A, double Z, double density, double radLen)
Constructor.
void compute(ParticlePropagator &Particle)
The real dE/dx generation and particle update.
double mostProbableLoss
The most probable enery loss.
const XYZTLorentzVector & deltaMom() const
Returns the actual energy lost.
~EnergyLossSimulator()
Default Destructor.
LandauFluctuationGenerator * theGenerator
The Landau Fluctuation generator.
XYZTLorentzVector deltaP
The actual energy loss.
math::XYZTLorentzVector XYZTLorentzVector
Definition: RawParticle.h:15