Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
FastSimulation
MaterialEffects
interface
MuonBremsstrahlungSimulator.h
Go to the documentation of this file.
1
#ifndef MUONBREMSSTRAHLUNGSIMULATOR_H
2
#define MUONBREMSSTRAHLUNGSIMULATOR_H
3
4
#include "
FastSimulation/MaterialEffects/interface/MaterialEffectsSimulator.h
"
5
23
#include <string>
24
25
26
class
TF1;
27
28
class
ParticlePropagator
;
29
class
RandomEngine
;
30
31
class
MuonBremsstrahlungSimulator
:
public
MaterialEffectsSimulator
32
{
33
public
:
34
36
MuonBremsstrahlungSimulator
(
const
RandomEngine
* engine,
37
double
A
,
double
Z
,
double
density
,
38
double
radLen
,
double
photonEnergyCut,
double
photonFractECut);
39
41
~MuonBremsstrahlungSimulator
() {}
42
43
44
// Returns the actual Muon brem Energy
45
inline
const
XYZTLorentzVector
&
deltaP_BremMuon
()
const
{
return
deltaPMuon
; }
46
47
// Returns the actual photon brem Energy
48
inline
const
XYZTLorentzVector
&
deltaP_BremPhoton
()
const
{
return
brem_photon
; }
49
50
51
private
:
52
53
TF1*
f1
;
54
55
int
npar
;
56
58
double
photonEnergy
;
59
double
bremProba
;
61
double
photonFractE
;
62
64
double
xmin
,
xmax
,
rand
;
65
double
d
;
//distance
66
68
unsigned
int
poisson
(
double
ymu);
69
71
void
compute
(
ParticlePropagator
&Particle);
72
74
XYZTLorentzVector
brem
(
ParticlePropagator
&
p
)
const
;
75
77
double
gbteth
(
const
double
ener,
78
const
double
partm,
79
const
double
efrac)
const
;
80
81
// The actual Muon Brem
82
XYZTLorentzVector
deltaPMuon
;
83
//The photon brem
84
XYZTLorentzVector
brem_photon
;
85
86
87
88
};
89
#endif
RandomEngine
Definition:
RandomEngine.h:18
MuonBremsstrahlungSimulator::npar
int npar
Definition:
MuonBremsstrahlungSimulator.h:55
MuonBremsstrahlungSimulator::xmin
double xmin
The fractional photon energy cut (determined from the above two)
Definition:
MuonBremsstrahlungSimulator.h:64
MuonBremsstrahlungSimulator::MuonBremsstrahlungSimulator
MuonBremsstrahlungSimulator(const RandomEngine *engine, double A, double Z, double density, double radLen, double photonEnergyCut, double photonFractECut)
Constructor.
Definition:
MuonBremsstrahlungSimulator.cc:22
MaterialEffectsSimulator.h
MuonBremsstrahlungSimulator::brem
XYZTLorentzVector brem(ParticlePropagator &p) const
Compute Brem photon energy and angles, if any.
Definition:
MuonBremsstrahlungSimulator.cc:131
MuonBremsstrahlungSimulator::~MuonBremsstrahlungSimulator
~MuonBremsstrahlungSimulator()
Default destructor.
Definition:
MuonBremsstrahlungSimulator.h:41
MuonBremsstrahlungSimulator::deltaP_BremMuon
const XYZTLorentzVector & deltaP_BremMuon() const
Definition:
MuonBremsstrahlungSimulator.h:45
MuonBremsstrahlungSimulator::f1
TF1 * f1
Definition:
MuonBremsstrahlungSimulator.h:53
ParticlePropagator
Definition:
ParticlePropagator.h:27
MuonBremsstrahlungSimulator::deltaPMuon
XYZTLorentzVector deltaPMuon
Definition:
MuonBremsstrahlungSimulator.h:82
MaterialEffectsSimulator::Z
double Z
Definition:
MaterialEffectsSimulator.h:93
MuonBremsstrahlungSimulator::brem_photon
XYZTLorentzVector brem_photon
Definition:
MuonBremsstrahlungSimulator.h:84
MuonBremsstrahlungSimulator::rand
double rand
Definition:
MuonBremsstrahlungSimulator.h:64
MuonBremsstrahlungSimulator::poisson
unsigned int poisson(double ymu)
Generate numbers according to a Poisson distribution of mean ymu.
Definition:
MuonBremsstrahlungSimulator.cc:191
MuonBremsstrahlungSimulator::deltaP_BremPhoton
const XYZTLorentzVector & deltaP_BremPhoton() const
Definition:
MuonBremsstrahlungSimulator.h:48
MuonBremsstrahlungSimulator::gbteth
double gbteth(const double ener, const double partm, const double efrac) const
A universal angular distribution - still from GEANT.
Definition:
MuonBremsstrahlungSimulator.cc:171
MuonBremsstrahlungSimulator
Definition:
MuonBremsstrahlungSimulator.h:31
MuonBremsstrahlungSimulator::d
double d
Definition:
MuonBremsstrahlungSimulator.h:65
MuonBremsstrahlungSimulator::xmax
double xmax
Definition:
MuonBremsstrahlungSimulator.h:64
MuonBremsstrahlungSimulator::photonFractE
double photonFractE
The minimum photon fractional energy (wrt that of the electron)
Definition:
MuonBremsstrahlungSimulator.h:61
AlCaHLTBitMon_ParallelJobs.p
tuple p
Definition:
AlCaHLTBitMon_ParallelJobs.py:152
MuonBremsstrahlungSimulator::bremProba
double bremProba
Definition:
MuonBremsstrahlungSimulator.h:59
MaterialEffectsSimulator::radLen
double radLen
Definition:
MaterialEffectsSimulator.h:95
MaterialEffectsSimulator::density
double density
Definition:
MaterialEffectsSimulator.h:94
MuonBremsstrahlungSimulator::compute
void compute(ParticlePropagator &Particle)
Generate Bremsstrahlung photons.
Definition:
MuonBremsstrahlungSimulator.cc:38
MaterialEffectsSimulator::A
double A
Definition:
MaterialEffectsSimulator.h:92
MuonBremsstrahlungSimulator::photonEnergy
double photonEnergy
The minimum photon energy to be radiated, in GeV.
Definition:
MuonBremsstrahlungSimulator.h:58
MaterialEffectsSimulator
Definition:
MaterialEffectsSimulator.h:23
XYZTLorentzVector
math::XYZTLorentzVector XYZTLorentzVector
Definition:
RawParticle.h:15
Generated for CMSSW Reference Manual by
1.8.5