Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef G4ATLASTOOLS_PUNCHTHROUGHPARTICLE_H
10 #define G4ATLASTOOLS_PUNCHTHROUGHPARTICLE_H
45 double minCorrE = 0.,
double fullCorrE = 0.,
double lowE = 0.,
46 double midE = 0.,
double upperE = 0.);
void setPCA4PDF(std::unique_ptr< PunchThroughPDFCreator > pdf)
set the PunchThroughPDFCreator for the momentumDeltaPhi distribution
int getId()
get-access methods
PunchThroughPDFCreator * getNumParticlesPDF()
correlation histogram domains [lowE,midE,upperE]
PunchThroughParticle(int pdg, bool doAnti=false)
set this particle's pdg code and if anti-particle should be done or not
TH2F * m_histCorrLowE
low energy correlation histogram (x:this particle, y:the correlated particle)
TH2F * m_histCorrHighE
high energy correlation histogram (x:this particle, y:the correlated particle)
PunchThroughPDFCreator * getPCA4PDF()
distribution parameters for the momentum delta theta
void setEnergyFactor(double energyFactor)
to scale the energy of created particles
std::unique_ptr< PunchThroughPDFCreator > m_pdf_pca1
theta deviation of punch-through particles
void setPosAngleFactor(double momAngleFactor)
to scale the position deflection angles
int getMaxNumParticles()
to scale the momentum deviation of created particles
void setPCA0PDF(std::unique_ptr< PunchThroughPDFCreator > pdf)
set the PunchThroughPDFCreator for the energy distribution
void setPCA3PDF(std::unique_ptr< PunchThroughPDFCreator > pdf)
set the PunchThroughPDFCreator for the momentumDeltaTheta distribution
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
double m_corrMinEnergy
below this energy threshold, no particle correlation is computed
std::unique_ptr< PunchThroughPDFCreator > m_pdf_pca3
delta theta angle of punch-through particle momentum
void setPCA1PDF(std::unique_ptr< PunchThroughPDFCreator > pdf)
set the PunchThroughPDFCreator for the deltaTheta distribution
void setMomAngleFactor(double momAngleFactor)
to scale the momentum deviation of created particles
void setPCA2PDF(std::unique_ptr< PunchThroughPDFCreator > pdf)
set the PunchThroughPDFCreator for the deltaPhi distribution
double getMinEnergy()
get if anti-particles should be done or not
double m_posAngleFactor
scale the position deflection angles
PunchThroughPDFCreator * getPCA2PDF()
distribution parameters for the exit delta theta
double m_minEnergy
some cut-parameters which will be set via python
~PunchThroughParticle()
destructor
int getFullCorrelationEnergy()
minimum energy for correlation
double m_corrFullEnergy
holds the energy threshold above which a particle correlation is fully developed
double getPosAngleFactor()
to scale the energy of created particles
double m_momAngleFactor
scale the momentum deviation
std::unique_ptr< PunchThroughPDFCreator > m_pdf_pca0
energy of punch-through particles
double m_numParticlesFactor
some tuning-parameters which will be set via python
double getEnergyFactor()
to scale the number of punch-through particles
PunchThroughPDFCreator * getPCA1PDF()
distribution parameters for the exit energy
void setNumParticlesPDF(std::unique_ptr< PunchThroughPDFCreator > pdf)
set the PunchThroughPDFCreator for the number of exit particles distribution
int m_corrPdg
all following stores the right distributions for all properties of the punch-through particles
int m_pdgId
distribution parameters for the momentum delta phi
void setMaxNumParticles(int maxNum)
the maximum number of particles which will be created
double * getCorrelationHistDomains()
the correlation histogram (high energies)
std::unique_ptr< PunchThroughPDFCreator > m_pdf_pca4
delta phi angle of punch-through particle momentum
std::unique_ptr< PunchThroughPDFCreator > m_pdf_pca2
phi deviation of punch-through particles
int getMinCorrelationEnergy()
the correlated particle id
void setCorrelation(int corrPdg, TH2F *histLowE, TH2F *histHighE, double minCorrE=0., double fullCorrE=0., double lowE=0., double midE=0., double upperE=0.)
set the correlated particle type + correlation histograms
double * m_corrHistDomains
correlation histogram domains
double getMomAngleFactor()
to scale the position deviation angles
bool m_doAnti
do also anti-particles?
double getNumParticlesFactor()
the minimum energy with which these particles should be created
TH2F * getCorrelationLowEHist()
the full correlation energy
TH2F * getCorrelationHighEHist()
the correlation histogram (low energies)
PunchThroughPDFCreator * getPCA0PDF()
distribution parameters for the number of particles
void setNumParticlesFactor(double numFactor)
to scale the number of punch-through particles
void setMinEnergy(double minEnergy)
set methods
double m_energyFactor
scale the energy of this particle type
int getCorrelatedPdg()
the maximum number of particles which will be created
PunchThroughPDFCreator * getPCA3PDF()
distribution parameters for the exit delta phi
int m_maxNum
the maximum number of particles which will be created
bool getdoAnti()
get this particle's pdg code
std::unique_ptr< PunchThroughPDFCreator > m_pdfNumParticles
number of punch-through particles