Geant4  10.02
G4SandiaTable Class Reference

#include <G4SandiaTable.hh>

+ Collaboration diagram for G4SandiaTable:

Public Member Functions

 G4SandiaTable (G4Material *)
 
 ~G4SandiaTable ()
 
void GetSandiaCofPerAtom (G4int Z, G4double energy, std::vector< G4double > &coeff) const
 
void GetSandiaCofWater (G4double energy, std::vector< G4double > &coeff) const
 
G4double GetWaterEnergyLimit () const
 
G4double GetWaterCofForMaterial (G4int, G4int) const
 
G4int GetMatNbOfIntervals () const
 
G4double GetSandiaCofForMaterial (G4int, G4int) const
 
G4double GetSandiaMatTable (G4int, G4int) const
 
const G4doubleGetSandiaCofForMaterial (G4double energy) const
 
G4double GetSandiaCofForMaterialPAI (G4int, G4int) const
 
G4double GetSandiaMatTablePAI (G4int, G4int) const
 
const G4doubleGetSandiaCofForMaterialPAI (G4double energy) const
 
G4OrderedTableGetSandiaMatrixPAI ()
 
void SetVerbose (G4int ver)
 
 G4SandiaTable (__void__ &)
 
 G4SandiaTable (G4int)
 
 G4SandiaTable ()
 
void Initialize (G4Material *)
 
void Initialize (G4int)
 
void SandiaSwap (G4double **da, G4int i, G4int j)
 
void SandiaSort (G4double **da, G4int sz)
 
G4int SandiaIntervals (G4int Z[], G4int el)
 
G4int SandiaMixing (G4int Z[], const G4double *fractionW, G4int el, G4int mi)
 
G4double GetPhotoAbsorpCof (G4int i, G4int j) const
 
G4int GetMaxInterval () const
 
G4double ** GetPointerToCof ()
 
G4bool GetLowerI1 ()
 
void SetLowerI1 (G4bool flag)
 

Static Public Member Functions

static G4double GetZtoA (G4int Z)
 

Private Member Functions

void ComputeMatSandiaMatrix ()
 
void ComputeMatSandiaMatrixPAI ()
 
G4int GetNbOfIntervals (G4int Z)
 
G4double GetSandiaPerAtom (G4int Z, G4int, G4int)
 
G4double GetIonizationPot (G4int Z) const
 
void ComputeMatTable ()
 
 G4SandiaTable (G4SandiaTable &)
 
G4SandiaTableoperator= (const G4SandiaTable &right)
 

Private Attributes

std::vector< G4doublefSandiaCofPerAtom
 
G4MaterialfMaterial
 
G4int fMatNbOfIntervals
 
G4OrderedTablefMatSandiaMatrix
 
G4OrderedTablefMatSandiaMatrixPAI
 
G4double ** fPhotoAbsorptionCof
 
G4int fMaxInterval
 
G4int fVerbose
 
G4bool fLowerI1
 

Static Private Attributes

static const G4int fNumberOfElements = 100
 
static const G4int fIntervalLimit = 100
 
static const G4int fNumberOfIntervals = 980
 
static const G4int fH2OlowerInt = 23
 
static const G4double fSandiaTable [981][5]
 
static const G4double fH2OlowerI1 [23][5]
 
static const G4int fNbOfIntervals [101]
 
static const G4double fZtoAratio [101]
 
static const G4double fIonizationPotentials [101]
 
static const G4double funitc [5]
 
static const G4double fnulcof [4] = {0.0}
 
static G4int fCumulInterval [101] = {0}
 

Detailed Description

Definition at line 67 of file G4SandiaTable.hh.

Constructor & Destructor Documentation

G4SandiaTable::G4SandiaTable ( G4Material material)

Definition at line 70 of file G4SandiaTable.cc.

References ComputeMatSandiaMatrix(), fCumulInterval, fLowerI1, fMatNbOfIntervals, fMatSandiaMatrix, fMatSandiaMatrixPAI, fMaxInterval, fNbOfIntervals, fPhotoAbsorptionCof, fSandiaCofPerAtom, and fVerbose.

+ Here is the call graph for this function:

G4SandiaTable::~G4SandiaTable ( )

Definition at line 116 of file G4SandiaTable.cc.

References G4OrderedTable::clearAndDestroy(), fMatSandiaMatrix, fMatSandiaMatrixPAI, and fPhotoAbsorptionCof.

+ Here is the call graph for this function:

G4SandiaTable::G4SandiaTable ( __void__ &  )

Definition at line 103 of file G4SandiaTable.cc.

References fLowerI1, fMatNbOfIntervals, fMaxInterval, fSandiaCofPerAtom, and fVerbose.

G4SandiaTable::G4SandiaTable ( G4int  matIndex)

Definition at line 614 of file G4SandiaTable.cc.

References FatalException, fLowerI1, fMaterial, fMatNbOfIntervals, fMatSandiaMatrix, fMatSandiaMatrixPAI, fMaxInterval, fPhotoAbsorptionCof, fSandiaCofPerAtom, fVerbose, G4Exception(), G4Material::GetMaterialTable(), and G4Material::GetNumberOfMaterials().

+ Here is the call graph for this function:

G4SandiaTable::G4SandiaTable ( )
G4SandiaTable::G4SandiaTable ( G4SandiaTable )
private

Member Function Documentation

void G4SandiaTable::ComputeMatSandiaMatrix ( )
private

Definition at line 211 of file G4SandiaTable.cc.

References DBL_MAX, Emin, eV, fCumulInterval, fMaterial, fMatNbOfIntervals, fMatSandiaMatrix, fNbOfIntervals, fSandiaCofPerAtom, fSandiaTable, fVerbose, G4cout, G4endl, G4Material::GetElementVector(), GetIonizationPot(), G4Material::GetName(), G4Material::GetNumberOfElements(), GetSandiaCofForMaterial(), GetSandiaCofPerAtom(), G4Material::GetVecNbOfAtomsPerVolume(), keV, G4INCL::Math::max(), and CLHEP::prec.

Referenced by G4SandiaTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SandiaTable::ComputeMatSandiaMatrixPAI ( )
private

Definition at line 339 of file G4SandiaTable.cc.

References c1, density, fH2OlowerI1, fH2OlowerInt, fIonizationPotentials, fLowerI1, fMaterial, fMatSandiaMatrixPAI, fMaxInterval, fNbOfIntervals, fSandiaTable, funitc, fVerbose, G4cout, G4endl, G4Material::GetDensity(), G4Material::GetElementVector(), G4Material::GetFractionVector(), G4Material::GetName(), G4Material::GetNumberOfElements(), GetSandiaMatTablePAI(), and keV.

Referenced by GetSandiaMatrixPAI(), and Initialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SandiaTable::ComputeMatTable ( )
private

Definition at line 1045 of file G4SandiaTable.cc.

References c1, fIonizationPotentials, fMaterial, fMatNbOfIntervals, fMatSandiaMatrix, fMaxInterval, fNbOfIntervals, fPhotoAbsorptionCof, fSandiaTable, fVerbose, G4cout, G4endl, G4Material::GetElementVector(), G4Material::GetFractionVector(), G4Material::GetName(), G4Material::GetNumberOfElements(), GetSandiaCofForMaterial(), keV, and SandiaSort().

Referenced by GetPointerToCof(), and Initialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4SandiaTable::GetIonizationPot ( G4int  Z) const
private

Definition at line 1025 of file G4SandiaTable.cc.

References eV, and fIonizationPotentials.

Referenced by ComputeMatSandiaMatrix().

+ Here is the caller graph for this function:

G4bool G4SandiaTable::GetLowerI1 ( )
inline

Definition at line 175 of file G4SandiaTable.hh.

References fLowerI1.

Referenced by G4PAIxSection::Initialize().

+ Here is the caller graph for this function:

G4int G4SandiaTable::GetMatNbOfIntervals ( ) const

Definition at line 922 of file G4SandiaTable.cc.

References fMatNbOfIntervals.

G4int G4SandiaTable::GetMaxInterval ( ) const

Definition at line 689 of file G4SandiaTable.cc.

References fMaxInterval.

Referenced by G4InitXscPAI::G4InitXscPAI(), G4PAIySection::Initialize(), and G4PAIxSection::Initialize().

+ Here is the caller graph for this function:

G4int G4SandiaTable::GetNbOfIntervals ( G4int  Z)
private

Definition at line 929 of file G4SandiaTable.cc.

References fNbOfIntervals.

G4double G4SandiaTable::GetPhotoAbsorpCof ( G4int  i,
G4int  j 
) const

Definition at line 715 of file G4SandiaTable.cc.

References fPhotoAbsorptionCof, and funitc.

Referenced by G4PAIxSection::G4PAIxSection().

+ Here is the caller graph for this function:

G4double ** G4SandiaTable::GetPointerToCof ( )

Definition at line 696 of file G4SandiaTable.cc.

References ComputeMatTable(), and fPhotoAbsorptionCof.

+ Here is the call graph for this function:

G4double G4SandiaTable::GetSandiaCofForMaterial ( G4int  interval,
G4int  j 
) const

Definition at line 954 of file G4SandiaTable.cc.

References fMatSandiaMatrix.

Referenced by ComputeMatSandiaMatrix(), ComputeMatTable(), G4PEEffectFluoModel::CrossSectionPerVolume(), G4VXTRenergyLoss::GetGasLinearPhotoAbs(), G4StrawTubeXTRadiator::GetMediumLinearPhotoAbs(), and G4VXTRenergyLoss::GetPlateLinearPhotoAbs().

+ Here is the caller graph for this function:

const G4double * G4SandiaTable::GetSandiaCofForMaterial ( G4double  energy) const

Definition at line 963 of file G4SandiaTable.cc.

References fMatNbOfIntervals, and fMatSandiaMatrix.

G4double G4SandiaTable::GetSandiaCofForMaterialPAI ( G4int  interval,
G4int  j 
) const

Definition at line 987 of file G4SandiaTable.cc.

References fMatSandiaMatrixPAI.

const G4double * G4SandiaTable::GetSandiaCofForMaterialPAI ( G4double  energy) const

Definition at line 997 of file G4SandiaTable.cc.

References fMatNbOfIntervals, fMatSandiaMatrixPAI, fnulcof, and x.

void G4SandiaTable::GetSandiaCofPerAtom ( G4int  Z,
G4double  energy,
std::vector< G4double > &  coeff 
) const

Definition at line 137 of file G4SandiaTable.cc.

References Emin, fCumulInterval, fNbOfIntervals, fSandiaTable, funitc, fZtoAratio, and keV.

Referenced by G4PEEffectFluoModel::ComputeCrossSectionPerAtom(), and ComputeMatSandiaMatrix().

+ Here is the caller graph for this function:

void G4SandiaTable::GetSandiaCofWater ( G4double  energy,
std::vector< G4double > &  coeff 
) const

Definition at line 170 of file G4SandiaTable.cc.

References fH2OlowerI1, fH2OlowerInt, funitc, and keV.

Referenced by G4LivermorePhotoElectricModel::CrossSectionPerVolume(), and G4LivermorePolarizedPhotoElectricModel::CrossSectionPerVolume().

+ Here is the caller graph for this function:

G4OrderedTable * G4SandiaTable::GetSandiaMatrixPAI ( )

Definition at line 1034 of file G4SandiaTable.cc.

References ComputeMatSandiaMatrixPAI(), and fMatSandiaMatrixPAI.

+ Here is the call graph for this function:

G4double G4SandiaTable::GetSandiaMatTable ( G4int  interval,
G4int  j 
) const

Definition at line 978 of file G4SandiaTable.cc.

References fMatSandiaMatrix, and funitc.

Referenced by G4InitXscPAI::G4InitXscPAI().

+ Here is the caller graph for this function:

G4double G4SandiaTable::GetSandiaMatTablePAI ( G4int  interval,
G4int  j 
) const

Definition at line 1015 of file G4SandiaTable.cc.

References fMatSandiaMatrixPAI.

Referenced by ComputeMatSandiaMatrixPAI(), G4PAIySection::Initialize(), and G4PAIxSection::Initialize().

+ Here is the caller graph for this function:

G4double G4SandiaTable::GetSandiaPerAtom ( G4int  Z,
G4int  interval,
G4int  j 
)
private

Definition at line 938 of file G4SandiaTable.cc.

References fCumulInterval, fNbOfIntervals, fSandiaTable, funitc, fZtoAratio, keV, and x.

G4double G4SandiaTable::GetWaterCofForMaterial ( G4int  i,
G4int  j 
) const

Definition at line 196 of file G4SandiaTable.cc.

References fH2OlowerI1, and funitc.

G4double G4SandiaTable::GetWaterEnergyLimit ( ) const

Definition at line 189 of file G4SandiaTable.cc.

References fH2OlowerI1, fH2OlowerInt, and keV.

G4double G4SandiaTable::GetZtoA ( G4int  Z)
static

Definition at line 203 of file G4SandiaTable.cc.

References fZtoAratio.

Referenced by G4ParticleHPNames::GetName().

+ Here is the caller graph for this function:

void G4SandiaTable::Initialize ( G4Material mat)

Definition at line 662 of file G4SandiaTable.cc.

References ComputeMatSandiaMatrixPAI(), and fMaterial.

+ Here is the call graph for this function:

void G4SandiaTable::Initialize ( G4int  matIndex)

Definition at line 670 of file G4SandiaTable.cc.

References ComputeMatTable(), FatalException, fMaterial, G4Exception(), G4Material::GetMaterialTable(), and G4Material::GetNumberOfMaterials().

+ Here is the call graph for this function:

G4SandiaTable& G4SandiaTable::operator= ( const G4SandiaTable right)
private
G4int G4SandiaTable::SandiaIntervals ( G4int  Z[],
G4int  el 
)

Definition at line 742 of file G4SandiaTable.cc.

References c1, fIonizationPotentials, fMaxInterval, fNbOfIntervals, fPhotoAbsorptionCof, fSandiaTable, fVerbose, G4cout, G4endl, keV, and SandiaSort().

Referenced by G4PAIxSection::G4PAIxSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4SandiaTable::SandiaMixing ( G4int  Z[],
const G4double fractionW,
G4int  el,
G4int  mi 
)

Definition at line 838 of file G4SandiaTable.cc.

References fIonizationPotentials, fNbOfIntervals, fPhotoAbsorptionCof, fSandiaTable, fVerbose, G4cout, G4endl, and keV.

Referenced by G4PAIxSection::G4PAIxSection().

+ Here is the caller graph for this function:

void G4SandiaTable::SandiaSort ( G4double **  da,
G4int  sz 
)

Definition at line 726 of file G4SandiaTable.cc.

References SandiaSwap().

Referenced by ComputeMatTable(), and SandiaIntervals().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SandiaTable::SandiaSwap ( G4double **  da,
G4int  i,
G4int  j 
)

Definition at line 704 of file G4SandiaTable.cc.

Referenced by SandiaSort().

+ Here is the caller graph for this function:

void G4SandiaTable::SetLowerI1 ( G4bool  flag)
inline

Definition at line 176 of file G4SandiaTable.hh.

References fLowerI1.

void G4SandiaTable::SetVerbose ( G4int  ver)
inline

Definition at line 98 of file G4SandiaTable.hh.

References fVerbose.

Member Data Documentation

G4int G4SandiaTable::fCumulInterval = {0}
staticprivate
const G4double G4SandiaTable::fH2OlowerI1
staticprivate
const G4int G4SandiaTable::fH2OlowerInt = 23
staticprivate
const G4int G4SandiaTable::fIntervalLimit = 100
staticprivate

Definition at line 119 of file G4SandiaTable.hh.

const G4double G4SandiaTable::fIonizationPotentials
staticprivate
G4bool G4SandiaTable::fLowerI1
private

Definition at line 192 of file G4SandiaTable.hh.

Referenced by ComputeMatSandiaMatrixPAI(), G4SandiaTable(), GetLowerI1(), and SetLowerI1().

G4Material* G4SandiaTable::fMaterial
private
G4int G4SandiaTable::fMatNbOfIntervals
private
G4OrderedTable* G4SandiaTable::fMatSandiaMatrix
private
G4int G4SandiaTable::fMaxInterval
private
const G4double G4SandiaTable::fnulcof = {0.0}
staticprivate

Definition at line 129 of file G4SandiaTable.hh.

Referenced by GetSandiaCofForMaterialPAI().

const G4int G4SandiaTable::fNumberOfElements = 100
staticprivate

Definition at line 118 of file G4SandiaTable.hh.

const G4int G4SandiaTable::fNumberOfIntervals = 980
staticprivate

Definition at line 120 of file G4SandiaTable.hh.

G4double** G4SandiaTable::fPhotoAbsorptionCof
private
std::vector<G4double> G4SandiaTable::fSandiaCofPerAtom
private

Definition at line 135 of file G4SandiaTable.hh.

Referenced by ComputeMatSandiaMatrix(), and G4SandiaTable().

const G4double G4SandiaTable::fSandiaTable
staticprivate
const G4double G4SandiaTable::fZtoAratio
staticprivate

Definition at line 126 of file G4SandiaTable.hh.

Referenced by GetSandiaCofPerAtom(), GetSandiaPerAtom(), and GetZtoA().


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