Geant4  10.02
G4ScreeningMottCrossSection Class Reference

#include <G4ScreeningMottCrossSection.hh>

+ Collaboration diagram for G4ScreeningMottCrossSection:

Public Member Functions

 G4ScreeningMottCrossSection ()
 
virtual ~G4ScreeningMottCrossSection ()
 
void Initialise (const G4ParticleDefinition *, G4double cosThetaLim)
 
G4double GetScreeningAngle ()
 
void SetScreeningCoefficient ()
 
void SetupParticle (const G4ParticleDefinition *)
 
void SetupKinematic (G4double kinEnergy, G4double Z)
 
G4double NuclearCrossSection ()
 
G4ThreeVector GetNewDirection ()
 
G4double GetMom2CM () const
 
G4double GetMom2Lab () const
 
G4double GetTrec () const
 
G4double GetScreeningCoefficient () const
 
G4double GetTotalCross () const
 
G4double McFcorrection (G4double)
 
G4double RatioMottRutherford (G4double)
 
G4double FormFactor2ExpHof (G4double)
 
G4double GetScatteringAngle ()
 
G4double AngleDistribution (G4double)
 

Private Member Functions

G4ScreeningMottCrossSectionoperator= (const G4ScreeningMottCrossSection &right)
 
 G4ScreeningMottCrossSection (const G4ScreeningMottCrossSection &)
 

Private Attributes

G4NistManagerfNistManager
 
G4PowfG4pow
 
G4MottCoefficientsmottcoeff
 
G4double TotalCross
 
G4double cosThetaMin
 
G4double cosThetaMax
 
G4double cosTetMinNuc
 
G4double cosTetMaxNuc
 
G4double ecut
 
G4double etag
 
const G4ParticleDefinitionparticle
 
G4double spin
 
G4double mass
 
G4double tkinLab
 
G4double momLab2
 
G4double invbetaLab2
 
G4double mu_rel
 
G4double tkin
 
G4double mom2
 
G4double invbeta2
 
G4double beta
 
G4double gamma
 
G4double targetZ
 
G4double targetA
 
G4double targetMass
 
G4double Trec
 
G4double As
 
G4double coeffb [5][6]
 
G4double alpha
 
G4double htc2
 
G4double e2
 
G4double angle [DIM]
 
G4double tet [DIM]
 
G4double dangle [DIM]
 
G4double cross [DIM]
 

Static Private Attributes

static const G4int DIM = 950
 

Detailed Description

Definition at line 86 of file G4ScreeningMottCrossSection.hh.

Constructor & Destructor Documentation

G4ScreeningMottCrossSection::G4ScreeningMottCrossSection ( )

Definition at line 83 of file G4ScreeningMottCrossSection.cc.

References As, beta, coeffb, cosTetMaxNuc, cosTetMinNuc, ecut, etag, fG4pow, fNistManager, gamma, G4Pow::GetInstance(), G4NistManager::Instance(), invbeta2, invbetaLab2, mass, mom2, momLab2, mottcoeff, mu_rel, particle, spin, targetA, targetMass, targetZ, tkin, tkinLab, TotalCross, and Trec.

+ Here is the call graph for this function:

G4ScreeningMottCrossSection::~G4ScreeningMottCrossSection ( )
virtual

Definition at line 119 of file G4ScreeningMottCrossSection.cc.

References mottcoeff.

G4ScreeningMottCrossSection::G4ScreeningMottCrossSection ( const G4ScreeningMottCrossSection )
private

Member Function Documentation

G4double G4ScreeningMottCrossSection::AngleDistribution ( G4double  anglein)

Definition at line 342 of file G4ScreeningMottCrossSection.cc.

References As, beta, coeffb, e2, FormFactor2ExpHof(), G4Exp(), G4Log(), gamma, McFcorrection(), mu_rel, RatioMottRutherford(), targetZ, G4INCL::CrossSections::total(), TotalCross, and twopi.

Referenced by GetScatteringAngle().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ScreeningMottCrossSection::FormFactor2ExpHof ( G4double  angles)

Definition at line 246 of file G4ScreeningMottCrossSection.cc.

References cm, G4Exp(), G4Log(), htc2, mass, targetA, targetMass, and tkinLab.

Referenced by AngleDistribution(), and NuclearCrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ScreeningMottCrossSection::GetMom2CM ( ) const
inline

Definition at line 203 of file G4ScreeningMottCrossSection.hh.

References mom2.

G4double G4ScreeningMottCrossSection::GetMom2Lab ( ) const
inline

Definition at line 210 of file G4ScreeningMottCrossSection.hh.

References momLab2.

G4ThreeVector G4ScreeningMottCrossSection::GetNewDirection ( )

Definition at line 394 of file G4ScreeningMottCrossSection.cc.

References G4UniformRand, GetScatteringAngle(), mass, targetMass, tkinLab, Trec, and twopi.

+ Here is the call graph for this function:

G4double G4ScreeningMottCrossSection::GetScatteringAngle ( )

Definition at line 366 of file G4ScreeningMottCrossSection.cc.

References angle, AngleDistribution(), dangle, DIM, G4UniformRand, and tet.

Referenced by GetNewDirection(), and G4eSingleCoulombScatteringModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ScreeningMottCrossSection::GetScreeningAngle ( )

Definition at line 152 of file G4ScreeningMottCrossSection.cc.

References As, pi, and SetScreeningCoefficient().

+ Here is the call graph for this function:

G4double G4ScreeningMottCrossSection::GetScreeningCoefficient ( ) const
inline

Definition at line 225 of file G4ScreeningMottCrossSection.hh.

References As.

G4double G4ScreeningMottCrossSection::GetTotalCross ( ) const
inline

Definition at line 233 of file G4ScreeningMottCrossSection.hh.

References TotalCross.

Referenced by G4eSingleCoulombScatteringModel::SampleSecondaries().

+ Here is the caller graph for this function:

G4double G4ScreeningMottCrossSection::GetTrec ( ) const
inline

Definition at line 218 of file G4ScreeningMottCrossSection.hh.

References Trec.

void G4ScreeningMottCrossSection::Initialise ( const G4ParticleDefinition p,
G4double  cosThetaLim 
)

Definition at line 125 of file G4ScreeningMottCrossSection.cc.

References cosThetaMin, DBL_MAX, DBL_MIN, ecut, etag, mom2, particle, SetupParticle(), targetZ, and tkin.

Referenced by G4eSingleCoulombScatteringModel::Initialise().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ScreeningMottCrossSection::McFcorrection ( G4double  angles)

Definition at line 268 of file G4ScreeningMottCrossSection.cc.

References alpha, beta, invbeta2, pi, and targetZ.

Referenced by AngleDistribution(), and NuclearCrossSection().

+ Here is the caller graph for this function:

G4double G4ScreeningMottCrossSection::NuclearCrossSection ( )

Definition at line 303 of file G4ScreeningMottCrossSection.cc.

References As, beta, coeffb, cosTetMaxNuc, cosTetMinNuc, cross, dangle, DIM, e2, e4, FormFactor2ExpHof(), G4Exp(), G4Log(), gamma, McFcorrection(), mu_rel, RatioMottRutherford(), targetZ, tet, TotalCross, and twopi.

Referenced by G4eSingleCoulombScatteringModel::ComputeCrossSectionPerAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ScreeningMottCrossSection& G4ScreeningMottCrossSection::operator= ( const G4ScreeningMottCrossSection right)
private
G4double G4ScreeningMottCrossSection::RatioMottRutherford ( G4double  angles)

Definition at line 277 of file G4ScreeningMottCrossSection.cc.

References a, beta, coeffb, G4Exp(), and G4Log().

Referenced by AngleDistribution(), and NuclearCrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ScreeningMottCrossSection::SetScreeningCoefficient ( )

Definition at line 136 of file G4ScreeningMottCrossSection.cc.

References a0, alpha, As, factor, fG4pow, htc2, invbeta2, mom2, targetZ, and G4Pow::Z13().

Referenced by GetScreeningAngle(), and SetupKinematic().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ScreeningMottCrossSection::SetupKinematic ( G4double  kinEnergy,
G4double  Z 
)

Definition at line 164 of file G4ScreeningMottCrossSection.cc.

References A(), angle, beta, coeffb, cosTetMaxNuc, cosTetMinNuc, cosThetaMax, cosThetaMin, cross, dangle, DIM, fNistManager, G4Exp(), G4Log(), gamma, G4NistManager::GetAtomicMassAmu(), G4NucleiProperties::GetNuclearMass(), invbeta2, invbetaLab2, iz, mass, mom2, momLab2, mottcoeff, mu_rel, G4MottCoefficients::SetMottCoeff(), SetScreeningCoefficient(), targetA, targetMass, targetZ, tet, tkin, and tkinLab.

Referenced by G4eSingleCoulombScatteringModel::ComputeCrossSectionPerAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ScreeningMottCrossSection::SetupParticle ( const G4ParticleDefinition p)
inline

Definition at line 192 of file G4ScreeningMottCrossSection.hh.

References G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetPDGSpin(), mass, particle, spin, and tkin.

Referenced by Initialise(), and G4eSingleCoulombScatteringModel::SetupParticle().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4ScreeningMottCrossSection::alpha
private

Definition at line 176 of file G4ScreeningMottCrossSection.hh.

Referenced by McFcorrection(), and SetScreeningCoefficient().

G4double G4ScreeningMottCrossSection::angle[DIM]
private

Definition at line 183 of file G4ScreeningMottCrossSection.hh.

Referenced by GetScatteringAngle(), and SetupKinematic().

G4double G4ScreeningMottCrossSection::coeffb[5][6]
private
G4double G4ScreeningMottCrossSection::cosTetMaxNuc
private
G4double G4ScreeningMottCrossSection::cosTetMinNuc
private
G4double G4ScreeningMottCrossSection::cosThetaMax
private

Definition at line 137 of file G4ScreeningMottCrossSection.hh.

Referenced by SetupKinematic().

G4double G4ScreeningMottCrossSection::cosThetaMin
private

Definition at line 136 of file G4ScreeningMottCrossSection.hh.

Referenced by Initialise(), and SetupKinematic().

G4double G4ScreeningMottCrossSection::cross[DIM]
private

Definition at line 186 of file G4ScreeningMottCrossSection.hh.

Referenced by NuclearCrossSection(), and SetupKinematic().

G4double G4ScreeningMottCrossSection::dangle[DIM]
private
const G4int G4ScreeningMottCrossSection::DIM = 950
staticprivate
G4double G4ScreeningMottCrossSection::e2
private

Definition at line 178 of file G4ScreeningMottCrossSection.hh.

Referenced by AngleDistribution(), and NuclearCrossSection().

G4double G4ScreeningMottCrossSection::ecut
private

Definition at line 144 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and Initialise().

G4double G4ScreeningMottCrossSection::etag
private

Definition at line 145 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and Initialise().

G4Pow* G4ScreeningMottCrossSection::fG4pow
private
G4NistManager* G4ScreeningMottCrossSection::fNistManager
private

Definition at line 129 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and SetupKinematic().

G4double G4ScreeningMottCrossSection::gamma
private
G4double G4ScreeningMottCrossSection::htc2
private

Definition at line 177 of file G4ScreeningMottCrossSection.hh.

Referenced by FormFactor2ExpHof(), and SetScreeningCoefficient().

G4double G4ScreeningMottCrossSection::invbeta2
private
G4double G4ScreeningMottCrossSection::invbetaLab2
private

Definition at line 156 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and SetupKinematic().

G4double G4ScreeningMottCrossSection::mass
private
G4double G4ScreeningMottCrossSection::mom2
private
G4double G4ScreeningMottCrossSection::momLab2
private
G4MottCoefficients* G4ScreeningMottCrossSection::mottcoeff
private
G4double G4ScreeningMottCrossSection::mu_rel
private
const G4ParticleDefinition* G4ScreeningMottCrossSection::particle
private
G4double G4ScreeningMottCrossSection::spin
private

Definition at line 150 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and SetupParticle().

G4double G4ScreeningMottCrossSection::targetA
private
G4double G4ScreeningMottCrossSection::targetMass
private
G4double G4ScreeningMottCrossSection::tet[DIM]
private
G4double G4ScreeningMottCrossSection::tkin
private
G4double G4ScreeningMottCrossSection::tkinLab
private
G4double G4ScreeningMottCrossSection::TotalCross
private
G4double G4ScreeningMottCrossSection::Trec
private

The documentation for this class was generated from the following files: