Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
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
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::BremsstrahlungSimulator
BremsstrahlungSimulator(double photonEnergyCut, double photonFractECut)
Constructor.
Definition:
BremsstrahlungSimulator.cc:8
Particle
Definition:
Particle.h:21
BremsstrahlungSimulator
Definition:
BremsstrahlungSimulator.h:25
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
AlCaHLTBitMon_ParallelJobs.p
tuple p
Definition:
AlCaHLTBitMon_ParallelJobs.py:153
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
BremsstrahlungSimulator::brem
XYZTLorentzVector brem(ParticlePropagator &p, RandomEngineAndDistribution const *) const
Compute Brem photon energy and angles, if any.
Definition:
BremsstrahlungSimulator.cc:63
MaterialEffectsSimulator
Definition:
MaterialEffectsSimulator.h:25
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.5