ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4SandiaTable Class Reference

#include <geant4/tree/geant4-10.6-release/source/materials/include/G4SandiaTable.hh>

+ Collaboration diagram for G4SandiaTable:

Public Member Functions

 G4SandiaTable (const 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 GetSandiaMatTablePAI (G4int, G4int) const
 
const G4doubleGetSandiaCofForMaterialPAI (G4double energy) const
 
void SetVerbose (G4int ver)
 
 G4SandiaTable (__void__ &)
 
 G4SandiaTable (G4int matIndex)
 
 G4SandiaTable ()
 
void Initialize (const G4Material *)
 
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
 
G4bool GetLowerI1 ()
 
void SetLowerI1 (G4bool flag)
 

Static Public Member Functions

static G4double GetZtoA (G4int Z)
 

Private Member Functions

void ComputeMatSandiaMatrix ()
 
void ComputeMatSandiaMatrixPAI ()
 
G4double GetSandiaPerAtom (G4int Z, G4int, G4int) const
 
void ComputeMatTable ()
 
void SandiaSwap (G4double **da, G4int i, G4int j)
 
void SandiaSort (G4double **da, G4int sz)
 
G4double ** GetPointerToCof ()
 
G4bool operator== (const G4SandiaTable &) const
 
G4bool operator!= (const G4SandiaTable &) const
 
 G4SandiaTable (G4SandiaTable &)
 
G4SandiaTableoperator= (const G4SandiaTable &right)
 

Private Attributes

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

Static Private Attributes

static G4int fCumulInterval [101] = {0}
 
static const G4double funitc [5]
 
static const G4double fSandiaTable [981][5]
 
static const G4int fNumberOfElements = 100
 
static const G4int fIntervalLimit = 100
 
static const G4int fNumberOfIntervals = 980
 
static const G4int fH2OlowerInt = 23
 

Detailed Description

Definition at line 63 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 63 of file G4SandiaTable.hh

Constructor & Destructor Documentation

G4SandiaTable::G4SandiaTable ( const G4Material material)

Definition at line 65 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 65 of file G4SandiaTable.cc

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

+ Here is the call graph for this function:

G4SandiaTable::~G4SandiaTable ( )

Definition at line 111 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 111 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 98 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 98 of file G4SandiaTable.cc

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

G4SandiaTable::G4SandiaTable ( G4int  matIndex)

Definition at line 658 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 658 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 ( )

Definition at line 688 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 688 of file G4SandiaTable.cc

References fLowerI1, fMaterial, fMatNbOfIntervals, fMatSandiaMatrix, fMatSandiaMatrixPAI, fMaxInterval, fPhotoAbsorptionCof, fSandiaCofPerAtom, and fVerbose.

G4SandiaTable::G4SandiaTable ( G4SandiaTable )
private

Member Function Documentation

void G4SandiaTable::ComputeMatSandiaMatrix ( )
private

Definition at line 246 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 246 of file G4SandiaTable.cc

References kdfinder::abs(), DBL_MAX, Emin, CLHEP::eV, fCumulInterval, fIonizationPotentials, fMaterial, fMatNbOfIntervals, fMatSandiaMatrix, fNbOfIntervals, fSandiaCofPerAtom, fSandiaTable, fVerbose, G4cout, G4endl, G4lrint(), G4Material::GetElementVector(), G4Material::GetName(), G4Material::GetNumberOfElements(), GetSandiaCofForMaterial(), GetSandiaCofPerAtom(), G4Material::GetVecNbOfAtomsPerVolume(), k, CLHEP::keV, keV, max, min, CLHEP::prec, tmp1, tmp2, Z, and z.

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 379 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 379 of file G4SandiaTable.cc

References c, c1, fH2OlowerI1, fH2OlowerInt, fIonizationPotentials, fLowerI1, fMaterial, fMatSandiaMatrixPAI, fMaxInterval, fNbOfIntervals, fSandiaTable, funitc, fVerbose, G4cout, G4endl, G4lrint(), G4Material::GetDensity(), G4Material::GetElementVector(), G4Material::GetFractionVector(), G4Material::GetName(), G4Material::GetNumberOfElements(), GetSandiaMatTablePAI(), k, k1, k2, CLHEP::keV, keV, n1, tmp, Z, and z.

Referenced by Initialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SandiaTable::ComputeMatTable ( )
private

Definition at line 1051 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 1051 of file G4SandiaTable.cc

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

Referenced by GetPointerToCof().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4SandiaTable::GetLowerI1 ( )
inline

Definition at line 150 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 150 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 946 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 946 of file G4SandiaTable.cc

References fMatNbOfIntervals.

G4int G4SandiaTable::GetMaxInterval ( ) const

Definition at line 713 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 713 of file G4SandiaTable.cc

References fMaxInterval.

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

+ Here is the caller graph for this function:

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

Definition at line 739 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 739 of file G4SandiaTable.cc

References fPhotoAbsorptionCof, and funitc.

Referenced by G4PAIxSection::G4PAIxSection().

+ Here is the caller graph for this function:

G4double ** G4SandiaTable::GetPointerToCof ( )
private

Definition at line 720 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 720 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 980 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 980 of file G4SandiaTable.cc

References fMatNbOfIntervals, and 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 998 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 998 of file G4SandiaTable.cc

References fMatNbOfIntervals, and fMatSandiaMatrix.

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

Definition at line 132 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 132 of file G4SandiaTable.cc

References source.hepunit::amu, Emin, fCumulInterval, fNbOfIntervals, fSandiaTable, funitc, fZtoAratio, CLHEP::keV, and Z.

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 173 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 173 of file G4SandiaTable.cc

References fH2OlowerI1, fH2OlowerInt, funitc, and CLHEP::keV.

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

+ Here is the caller graph for this function:

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

Definition at line 1013 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 1013 of file G4SandiaTable.cc

References fMatNbOfIntervals, 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 1031 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 1031 of file G4SandiaTable.cc

References fMatSandiaMatrixPAI, and fMaxInterval.

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 
) const
private

Definition at line 954 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 954 of file G4SandiaTable.cc

References CLHEP::amu, fCumulInterval, fNbOfIntervals, fSandiaTable, funitc, fZtoAratio, CLHEP::keV, x, and Z.

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

Definition at line 204 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 204 of file G4SandiaTable.cc

References fH2OlowerI1, and funitc.

G4double G4SandiaTable::GetWaterEnergyLimit ( ) const

Definition at line 197 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 197 of file G4SandiaTable.cc

References fH2OlowerI1, fH2OlowerInt, and CLHEP::keV.

G4double G4SandiaTable::GetZtoA ( G4int  Z)
static

Definition at line 211 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 211 of file G4SandiaTable.cc

References fZtoAratio, and Z.

Referenced by G4ParticleHPNames::GetName().

+ Here is the caller graph for this function:

void G4SandiaTable::Initialize ( const G4Material mat)

Definition at line 705 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 705 of file G4SandiaTable.cc

References ComputeMatSandiaMatrixPAI(), fMaterial, and mat.

+ Here is the call graph for this function:

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

Definition at line 766 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 766 of file G4SandiaTable.cc

References c, c1, fIonizationPotentials, fMaxInterval, fNbOfIntervals, fPhotoAbsorptionCof, fSandiaTable, fVerbose, G4cout, G4endl, k1, k2, keV, n1, 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 862 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 862 of file G4SandiaTable.cc

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

Referenced by G4PAIxSection::G4PAIxSection().

+ Here is the caller graph for this function:

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

Definition at line 750 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 750 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 
)
private

Definition at line 728 of file G4SandiaTable.cc.

View newest version in sPHENIX GitHub at line 728 of file G4SandiaTable.cc

References tmp.

Referenced by SandiaSort().

+ Here is the caller graph for this function:

void G4SandiaTable::SetLowerI1 ( G4bool  flag)
inline

Definition at line 151 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 151 of file G4SandiaTable.hh

References fLowerI1.

void G4SandiaTable::SetVerbose ( G4int  ver)
inline

Definition at line 92 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 92 of file G4SandiaTable.hh

References fVerbose.

Member Data Documentation

G4int G4SandiaTable::fCumulInterval = {0}
staticprivate

Definition at line 115 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 115 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), G4SandiaTable(), GetSandiaCofPerAtom(), and GetSandiaPerAtom().

const G4int G4SandiaTable::fH2OlowerInt = 23
staticprivate

Definition at line 173 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 173 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrixPAI(), GetSandiaCofWater(), and GetWaterEnergyLimit().

const G4int G4SandiaTable::fIntervalLimit = 100
staticprivate

Definition at line 171 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 171 of file G4SandiaTable.hh

G4bool G4SandiaTable::fLowerI1
private

Definition at line 180 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 180 of file G4SandiaTable.hh

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

const G4Material* G4SandiaTable::fMaterial
private

Definition at line 122 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 122 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), ComputeMatSandiaMatrixPAI(), ComputeMatTable(), G4SandiaTable(), and Initialize().

G4int G4SandiaTable::fMatNbOfIntervals
private

Definition at line 123 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 123 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), ComputeMatTable(), G4SandiaTable(), GetMatNbOfIntervals(), GetSandiaCofForMaterial(), and GetSandiaMatTable().

G4OrderedTable* G4SandiaTable::fMatSandiaMatrix
private

Definition at line 124 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 124 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), ComputeMatTable(), G4SandiaTable(), GetSandiaCofForMaterial(), GetSandiaMatTable(), and ~G4SandiaTable().

G4OrderedTable* G4SandiaTable::fMatSandiaMatrixPAI
private

Definition at line 125 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 125 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrixPAI(), G4SandiaTable(), GetSandiaMatTablePAI(), and ~G4SandiaTable().

G4int G4SandiaTable::fMaxInterval
private

Definition at line 178 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 178 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrixPAI(), ComputeMatTable(), G4SandiaTable(), GetMaxInterval(), GetSandiaMatTablePAI(), and SandiaIntervals().

const G4int G4SandiaTable::fNumberOfElements = 100
staticprivate

Definition at line 170 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 170 of file G4SandiaTable.hh

const G4int G4SandiaTable::fNumberOfIntervals = 980
staticprivate

Definition at line 172 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 172 of file G4SandiaTable.hh

G4double** G4SandiaTable::fPhotoAbsorptionCof
private

Definition at line 176 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 176 of file G4SandiaTable.hh

Referenced by ComputeMatTable(), G4SandiaTable(), GetPhotoAbsorpCof(), GetPointerToCof(), SandiaIntervals(), SandiaMixing(), and ~G4SandiaTable().

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

Definition at line 119 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 119 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), and G4SandiaTable().

const G4double G4SandiaTable::fSandiaTable
staticprivate

Definition at line 169 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 169 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), ComputeMatSandiaMatrixPAI(), ComputeMatTable(), GetSandiaCofPerAtom(), GetSandiaPerAtom(), SandiaIntervals(), and SandiaMixing().

G4int G4SandiaTable::fVerbose
private

Definition at line 179 of file G4SandiaTable.hh.

View newest version in sPHENIX GitHub at line 179 of file G4SandiaTable.hh

Referenced by ComputeMatSandiaMatrix(), ComputeMatSandiaMatrixPAI(), ComputeMatTable(), G4SandiaTable(), SandiaIntervals(), SandiaMixing(), and SetVerbose().


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