Geant4  10.00.p01
G4IonCoulombCrossSection Class Reference

#include <G4IonCoulombCrossSection.hh>

+ Collaboration diagram for G4IonCoulombCrossSection:

Public Member Functions

 G4IonCoulombCrossSection ()
 
virtual ~G4IonCoulombCrossSection ()
 
void Initialise (const G4ParticleDefinition *, G4double cosThetaLim)
 
G4double NuclearCrossSection ()
 
G4double SampleCosineTheta ()
 
void SetupParticle (const G4ParticleDefinition *)
 
void SetupKinematic (G4double kinEnergy, G4double cut, G4int iz)
 
void SetupTarget (G4double Z, G4double kinEnergy, G4int heavycorr)
 
G4double GetMomentum2 ()
 

Protected Attributes

G4double coeff
 
G4double cosThetaMin
 
G4double cosThetaMax
 
G4double cosTetMinNuc
 
G4double cosTetMaxNuc
 
G4double nucXSection
 
G4double ecut
 
G4double etag
 
const G4ParticleDefinitionparticle
 
G4double chargeSquare
 
G4double spin
 
G4double mass
 
G4double tkinLab
 
G4double momLab2
 
G4double invbetaLab2
 
G4double tkin
 
G4double mom2
 
G4double invbeta2
 
G4double targetZ
 
G4double targetMass
 
G4double screenZ
 

Private Member Functions

void SetScreenRSquare (G4int iz)
 
G4IonCoulombCrossSectionoperator= (const G4IonCoulombCrossSection &right)
 
 G4IonCoulombCrossSection (const G4IonCoulombCrossSection &)
 

Private Attributes

const G4ParticleDefinitiontheProton
 
G4NistManagerfNistManager
 
G4double alpha2
 
G4double ScreenRSquare
 

Detailed Description

Definition at line 76 of file G4IonCoulombCrossSection.hh.

Constructor & Destructor Documentation

G4IonCoulombCrossSection::G4IonCoulombCrossSection ( )

Definition at line 67 of file G4IonCoulombCrossSection.cc.

References chargeSquare, coeff, cosTetMaxNuc, cosTetMinNuc, ecut, etag, fNistManager, G4NistManager::Instance(), invbeta2, invbetaLab2, mass, mom2, momLab2, nucXSection, particle, G4Proton::Proton(), ScreenRSquare, screenZ, spin, targetMass, targetZ, theProton, tkin, and tkinLab.

+ Here is the call graph for this function:

G4IonCoulombCrossSection::~G4IonCoulombCrossSection ( )
virtual

Definition at line 96 of file G4IonCoulombCrossSection.cc.

G4IonCoulombCrossSection::G4IonCoulombCrossSection ( const G4IonCoulombCrossSection )
private

Member Function Documentation

G4double G4IonCoulombCrossSection::GetMomentum2 ( )
inline

Definition at line 177 of file G4IonCoulombCrossSection.hh.

References mom2.

Referenced by G4IonCoulombScatteringModel::SampleSecondaries().

+ Here is the caller graph for this function:

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

Definition at line 100 of file G4IonCoulombCrossSection.cc.

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

Referenced by G4IonCoulombScatteringModel::Initialise().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4IonCoulombCrossSection::NuclearCrossSection ( )

Definition at line 211 of file G4IonCoulombCrossSection.cc.

References chargeSquare, coeff, cosTetMaxNuc, cosTetMinNuc, fac, invbeta2, mom2, nucXSection, screenZ, and targetZ.

Referenced by G4IonCoulombScatteringModel::ComputeCrossSectionPerAtom().

+ Here is the caller graph for this function:

G4IonCoulombCrossSection& G4IonCoulombCrossSection::operator= ( const G4IonCoulombCrossSection right)
private
G4double G4IonCoulombCrossSection::SampleCosineTheta ( )

Definition at line 236 of file G4IonCoulombCrossSection.cc.

References cosTetMaxNuc, cosTetMinNuc, G4UniformRand, and screenZ.

Referenced by G4IonCoulombScatteringModel::SampleSecondaries().

+ Here is the caller graph for this function:

void G4IonCoulombCrossSection::SetScreenRSquare ( G4int  iz)
private

Definition at line 187 of file G4IonCoulombCrossSection.cc.

References a0, alpha2, chargeSquare, fNistManager, G4NistManager::GetZ13(), particle, ScreenRSquare, targetZ, and theProton.

Referenced by SetupTarget().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonCoulombCrossSection::SetupKinematic ( G4double  kinEnergy,
G4double  cut,
G4int  iz 
)

Definition at line 116 of file G4IonCoulombCrossSection.cc.

References cosTetMaxNuc, cosTetMinNuc, cosThetaMax, cosThetaMin, ecut, fNistManager, G4NistManager::GetAtomicMassAmu(), invbeta2, invbetaLab2, mass, mom2, momLab2, targetMass, tkin, and tkinLab.

Referenced by G4IonCoulombScatteringModel::ComputeCrossSectionPerAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonCoulombCrossSection::SetupParticle ( const G4ParticleDefinition p)
inline

Definition at line 164 of file G4IonCoulombCrossSection.hh.

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

Referenced by Initialise().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonCoulombCrossSection::SetupTarget ( G4double  Z,
G4double  kinEnergy,
G4int  heavycorr 
)

Definition at line 154 of file G4IonCoulombCrossSection.cc.

References alpha2, chargeSquare, cosTetMaxNuc, etag, invbeta2, iz, mom2, particle, ScreenRSquare, screenZ, SetScreenRSquare(), targetZ, and theProton.

Referenced by G4IonCoulombScatteringModel::ComputeCrossSectionPerAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4IonCoulombCrossSection::alpha2
private

Definition at line 156 of file G4IonCoulombCrossSection.hh.

Referenced by SetScreenRSquare(), and SetupTarget().

G4double G4IonCoulombCrossSection::chargeSquare
protected
G4double G4IonCoulombCrossSection::coeff
protected

Definition at line 113 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), and NuclearCrossSection().

G4double G4IonCoulombCrossSection::cosTetMaxNuc
protected
G4double G4IonCoulombCrossSection::cosTetMinNuc
protected
G4double G4IonCoulombCrossSection::cosThetaMax
protected

Definition at line 117 of file G4IonCoulombCrossSection.hh.

Referenced by SetupKinematic().

G4double G4IonCoulombCrossSection::cosThetaMin
protected

Definition at line 116 of file G4IonCoulombCrossSection.hh.

Referenced by Initialise(), and SetupKinematic().

G4double G4IonCoulombCrossSection::ecut
protected
G4double G4IonCoulombCrossSection::etag
protected

Definition at line 129 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), Initialise(), and SetupTarget().

G4NistManager* G4IonCoulombCrossSection::fNistManager
private
G4double G4IonCoulombCrossSection::invbeta2
protected
G4double G4IonCoulombCrossSection::invbetaLab2
protected

Definition at line 141 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), and SetupKinematic().

G4double G4IonCoulombCrossSection::mass
protected
G4double G4IonCoulombCrossSection::mom2
protected
G4double G4IonCoulombCrossSection::momLab2
protected

Definition at line 140 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), and SetupKinematic().

G4double G4IonCoulombCrossSection::nucXSection
protected
const G4ParticleDefinition* G4IonCoulombCrossSection::particle
protected
G4double G4IonCoulombCrossSection::ScreenRSquare
private
G4double G4IonCoulombCrossSection::screenZ
protected
G4double G4IonCoulombCrossSection::spin
protected

Definition at line 135 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), and SetupParticle().

G4double G4IonCoulombCrossSection::targetMass
protected

Definition at line 150 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), and SetupKinematic().

G4double G4IonCoulombCrossSection::targetZ
protected
const G4ParticleDefinition* G4IonCoulombCrossSection::theProton
private
G4double G4IonCoulombCrossSection::tkin
protected
G4double G4IonCoulombCrossSection::tkinLab
protected

Definition at line 139 of file G4IonCoulombCrossSection.hh.

Referenced by G4IonCoulombCrossSection(), and SetupKinematic().


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