Main Page
Namespaces
Classes
Package Documentation
src
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
23
class
ParticlePropagator
;
24
class
RandomEngineAndDistribution
;
25
26
class
BremsstrahlungSimulator
:
public
MaterialEffectsSimulator
27
{
28
public
:
29
31
BremsstrahlungSimulator
(
double
photonEnergyCut,
32
double
photonFractECut);
33
35
~BremsstrahlungSimulator
()
override
{}
36
37
private
:
38
40
double
photonEnergy
;
41
43
double
photonFractE
;
44
46
double
xmin
;
47
49
unsigned
int
poisson
(
double
ymu,
RandomEngineAndDistribution
const
*);
50
52
void
compute
(
ParticlePropagator
&
Particle
,
RandomEngineAndDistribution
const
*)
override
;
53
55
XYZTLorentzVector
brem
(
ParticlePropagator
&
p
,
RandomEngineAndDistribution
const
*)
const
;
56
58
double
gbteth
(
const
double
ener,
59
const
double
partm,
60
const
double
efrac,
61
RandomEngineAndDistribution
const
*)
const
;
62
63
};
64
#endif
BremsstrahlungSimulator::compute
void compute(ParticlePropagator &Particle, RandomEngineAndDistribution const *) override
Generate Bremsstrahlung photons.
Definition:
BremsstrahlungSimulator.cc:18
AlCaHLTBitMon_ParallelJobs.p
p
Definition:
AlCaHLTBitMon_ParallelJobs.py:153
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:124
BremsstrahlungSimulator::BremsstrahlungSimulator
BremsstrahlungSimulator(double photonEnergyCut, double photonFractECut)
Constructor.
Definition:
BremsstrahlungSimulator.cc:8
BremsstrahlungSimulator
Definition:
BremsstrahlungSimulator.h:26
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:103
BremsstrahlungSimulator::~BremsstrahlungSimulator
~BremsstrahlungSimulator() override
Default destructor.
Definition:
BremsstrahlungSimulator.h:35
BremsstrahlungSimulator::xmin
double xmin
The fractional photon energy cut (determined from the above two)
Definition:
BremsstrahlungSimulator.h:46
BremsstrahlungSimulator::photonEnergy
double photonEnergy
The minimum photon energy to be radiated, in GeV.
Definition:
BremsstrahlungSimulator.h:40
RandomEngineAndDistribution
Definition:
RandomEngineAndDistribution.h:18
BremsstrahlungSimulator::brem
XYZTLorentzVector brem(ParticlePropagator &p, RandomEngineAndDistribution const *) const
Compute Brem photon energy and angles, if any.
Definition:
BremsstrahlungSimulator.cc:69
MaterialEffectsSimulator
Definition:
MaterialEffectsSimulator.h:25
BremsstrahlungSimulator::photonFractE
double photonFractE
The minimum photon fractional energy (wrt that of the electron)
Definition:
BremsstrahlungSimulator.h:43
XYZTLorentzVector
math::XYZTLorentzVector XYZTLorentzVector
Definition:
RawParticle.h:27
Generated for CMSSW Reference Manual by
1.8.11