CMS 3D CMS Logo

BremsstrahlungSimulator.h
Go to the documentation of this file.
1 #ifndef BREMSSTRAHLUNGSIMULATOR_H
2 #define BREMSSTRAHLUNGSIMULATOR_H
3 
5 
22 class ParticlePropagator;
24 
26 public:
28  BremsstrahlungSimulator(double photonEnergyCut, double photonFractECut);
29 
32 
33 private:
35  double photonEnergy;
36 
38  double photonFractE;
39 
41  double xmin;
42 
44  unsigned int poisson(double ymu, RandomEngineAndDistribution const*);
45 
48 
51 
53  double gbteth(const double ener, const double partm, const double efrac, RandomEngineAndDistribution const*) const;
54 };
55 #endif
BremsstrahlungSimulator::photonFractE
double photonFractE
The minimum photon fractional energy (wrt that of the electron)
Definition: BremsstrahlungSimulator.h:38
MaterialEffectsSimulator.h
XYZTLorentzVector
math::XYZTLorentzVector XYZTLorentzVector
Definition: RawParticle.h:25
BremsstrahlungSimulator::compute
void compute(ParticlePropagator &Particle, RandomEngineAndDistribution const *) override
Generate Bremsstrahlung photons.
Definition: BremsstrahlungSimulator.cc:14
BremsstrahlungSimulator::gbteth
double gbteth(const double ener, const double partm, const double efrac, RandomEngineAndDistribution const *) const
A universal angular distribution - still from GEANT.
Definition: BremsstrahlungSimulator.cc:94
BremsstrahlungSimulator::poisson
unsigned int poisson(double ymu, RandomEngineAndDistribution const *)
Generate numbers according to a Poisson distribution of mean ymu.
Definition: BremsstrahlungSimulator.cc:113
fastSimProducer_cff.photonEnergyCut
photonEnergyCut
Definition: fastSimProducer_cff.py:22
MaterialEffectsSimulator
Definition: MaterialEffectsSimulator.h:25
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
BremsstrahlungSimulator
Definition: BremsstrahlungSimulator.h:25
BremsstrahlungSimulator::BremsstrahlungSimulator
BremsstrahlungSimulator(double photonEnergyCut, double photonFractECut)
Constructor.
Definition: BremsstrahlungSimulator.cc:8
ParticlePropagator
Definition: ParticlePropagator.h:28
BremsstrahlungSimulator::brem
XYZTLorentzVector brem(ParticlePropagator &p, RandomEngineAndDistribution const *) const
Compute Brem photon energy and angles, if any.
Definition: BremsstrahlungSimulator.cc:63
BremsstrahlungSimulator::xmin
double xmin
The fractional photon energy cut (determined from the above two)
Definition: BremsstrahlungSimulator.h:41
BremsstrahlungSimulator::~BremsstrahlungSimulator
~BremsstrahlungSimulator() override
Default destructor.
Definition: BremsstrahlungSimulator.h:31
Particle
Definition: Particle.py:1
BremsstrahlungSimulator::photonEnergy
double photonEnergy
The minimum photon energy to be radiated, in GeV.
Definition: BremsstrahlungSimulator.h:35
RandomEngineAndDistribution
Definition: RandomEngineAndDistribution.h:18