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