Geant4  10.02.p02
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 cross [DIM]
 

Detailed Description

Definition at line 88 of file G4ScreeningMottCrossSection.hh.

Constructor & Destructor Documentation

G4ScreeningMottCrossSection::G4ScreeningMottCrossSection ( )

Definition at line 86 of file G4ScreeningMottCrossSection.cc.

References As, beta, coeffb, cosTetMaxNuc, cosTetMinNuc, cross, dangle, DIM, 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 129 of file G4ScreeningMottCrossSection.cc.

References mottcoeff.

G4ScreeningMottCrossSection::G4ScreeningMottCrossSection ( const G4ScreeningMottCrossSection )
private

Member Function Documentation

G4double G4ScreeningMottCrossSection::AngleDistribution ( G4double  anglein)

Definition at line 329 of file G4ScreeningMottCrossSection.cc.

References As, beta, coeffb, e2, fG4pow, FormFactor2ExpHof(), gamma, McFcorrection(), mu_rel, G4Pow::powN(), 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 233 of file G4ScreeningMottCrossSection.cc.

References cm, fG4pow, G4Exp(), G4Log(), htc2, mass, G4Pow::powN(), 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 200 of file G4ScreeningMottCrossSection.hh.

References mom2.

G4double G4ScreeningMottCrossSection::GetMom2Lab ( ) const
inline

Definition at line 207 of file G4ScreeningMottCrossSection.hh.

References momLab2.

G4ThreeVector G4ScreeningMottCrossSection::GetNewDirection ( )

Definition at line 381 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 353 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 162 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 222 of file G4ScreeningMottCrossSection.hh.

References As.

G4double G4ScreeningMottCrossSection::GetTotalCross ( ) const
inline

Definition at line 230 of file G4ScreeningMottCrossSection.hh.

References TotalCross.

G4double G4ScreeningMottCrossSection::GetTrec ( ) const
inline

Definition at line 215 of file G4ScreeningMottCrossSection.hh.

References Trec.

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

Definition at line 135 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 255 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 290 of file G4ScreeningMottCrossSection.cc.

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

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

+ 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 264 of file G4ScreeningMottCrossSection.cc.

References a, beta, coeffb, fG4pow, and G4Pow::powN().

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 146 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 174 of file G4ScreeningMottCrossSection.cc.

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

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

+ 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 189 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 178 of file G4ScreeningMottCrossSection.hh.

Referenced by McFcorrection(), and SetScreeningCoefficient().

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

Definition at line 139 of file G4ScreeningMottCrossSection.hh.

Referenced by SetupKinematic().

G4double G4ScreeningMottCrossSection::cosThetaMin
private

Definition at line 138 of file G4ScreeningMottCrossSection.hh.

Referenced by Initialise(), and SetupKinematic().

G4double G4ScreeningMottCrossSection::cross[DIM]
private
G4double G4ScreeningMottCrossSection::e2
private

Definition at line 180 of file G4ScreeningMottCrossSection.hh.

Referenced by AngleDistribution(), and NuclearCrossSection().

G4double G4ScreeningMottCrossSection::ecut
private

Definition at line 146 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and Initialise().

G4double G4ScreeningMottCrossSection::etag
private

Definition at line 147 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and Initialise().

G4NistManager* G4ScreeningMottCrossSection::fNistManager
private

Definition at line 131 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and SetupKinematic().

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

Definition at line 179 of file G4ScreeningMottCrossSection.hh.

Referenced by FormFactor2ExpHof(), and SetScreeningCoefficient().

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

Definition at line 158 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 152 of file G4ScreeningMottCrossSection.hh.

Referenced by G4ScreeningMottCrossSection(), and SetupParticle().

G4double G4ScreeningMottCrossSection::targetA
private
G4double G4ScreeningMottCrossSection::targetMass
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: