Geant4  10.01.p02
G4CrossSectionDataStore Class Reference

#include <G4CrossSectionDataStore.hh>

+ Collaboration diagram for G4CrossSectionDataStore:

Public Member Functions

 G4CrossSectionDataStore ()
 
 ~G4CrossSectionDataStore ()
 
G4double GetCrossSection (const G4DynamicParticle *, const G4Material *)
 
G4double GetCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *)
 
G4double GetCrossSection (const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *, const G4Element *, const G4Material *)
 
G4ElementSampleZandA (const G4DynamicParticle *, const G4Material *, G4Nucleus &target)
 
void BuildPhysicsTable (const G4ParticleDefinition &)
 
void DumpPhysicsTable (const G4ParticleDefinition &)
 
void DumpHtml (const G4ParticleDefinition &, std::ofstream &)
 
void AddDataSet (G4VCrossSectionDataSet *)
 
void SetVerboseLevel (G4int value)
 

Private Member Functions

G4double GetIsoCrossSection (const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *, const G4Element *, const G4Material *aMaterial, G4int index)
 
G4CrossSectionDataStoreoperator= (const G4CrossSectionDataStore &right)
 
 G4CrossSectionDataStore (const G4CrossSectionDataStore &)
 

Private Attributes

G4NistManagernist
 
std::vector
< G4VCrossSectionDataSet * > 
dataSetList
 
std::vector< G4doublexsecelm
 
std::vector< G4doublexseciso
 
const G4MaterialcurrentMaterial
 
const G4ParticleDefinitionmatParticle
 
G4double matKinEnergy
 
G4double matCrossSection
 
const G4MaterialelmMaterial
 
const G4ElementcurrentElement
 
const G4ParticleDefinitionelmParticle
 
G4double elmKinEnergy
 
G4double elmCrossSection
 
G4int nDataSetList
 
G4int verboseLevel
 

Detailed Description

Definition at line 60 of file G4CrossSectionDataStore.hh.

Constructor & Destructor Documentation

G4CrossSectionDataStore::G4CrossSectionDataStore ( )

Definition at line 62 of file G4CrossSectionDataStore.cc.

References currentElement, currentMaterial, elmCrossSection, elmKinEnergy, elmMaterial, elmParticle, G4NistManager::Instance(), matCrossSection, matKinEnergy, matParticle, and nist.

+ Here is the call graph for this function:

G4CrossSectionDataStore::~G4CrossSectionDataStore ( )

Definition at line 74 of file G4CrossSectionDataStore.cc.

G4CrossSectionDataStore::G4CrossSectionDataStore ( const G4CrossSectionDataStore )
private

Member Function Documentation

void G4CrossSectionDataStore::AddDataSet ( G4VCrossSectionDataSet p)
inline

Definition at line 128 of file G4CrossSectionDataStore.hh.

References dataSetList, and nDataSetList.

Referenced by G4HadronicProcess::AddDataSet(), G4ElectronNuclearProcess::G4ElectronNuclearProcess(), G4PhotoNuclearProcess::G4PhotoNuclearProcess(), and G4PositronNuclearProcess::G4PositronNuclearProcess().

+ Here is the caller graph for this function:

void G4CrossSectionDataStore::BuildPhysicsTable ( const G4ParticleDefinition aParticleType)

Definition at line 334 of file G4CrossSectionDataStore.cc.

References dataSetList, and nDataSetList.

Referenced by G4HadronicProcess::BuildPhysicsTable().

+ Here is the caller graph for this function:

void G4CrossSectionDataStore::DumpHtml ( const G4ParticleDefinition ,
std::ofstream &  outFile 
)

Definition at line 377 of file G4CrossSectionDataStore.cc.

References dataSetList, GeV, and nDataSetList.

Referenced by G4HadronicProcessStore::PrintHtml().

+ Here is the caller graph for this function:

void G4CrossSectionDataStore::DumpPhysicsTable ( const G4ParticleDefinition aParticleType)

Definition at line 350 of file G4CrossSectionDataStore.cc.

References dataSetList, e1, e2, G4BestUnit, G4cout, G4endl, and nDataSetList.

Referenced by G4ChargeExchangeProcess::DumpPhysicsTable(), G4HadronicProcess::DumpPhysicsTable(), and G4HadronicProcessStore::Print().

+ Here is the caller graph for this function:

G4double G4CrossSectionDataStore::GetCrossSection ( const G4DynamicParticle part,
const G4Material mat 
)

Definition at line 80 of file G4CrossSectionDataStore.cc.

References currentMaterial, G4DynamicParticle::GetDefinition(), G4Material::GetElementVector(), G4DynamicParticle::GetKineticEnergy(), G4Material::GetNumberOfElements(), G4Material::GetVecNbOfAtomsPerVolume(), matCrossSection, matKinEnergy, matParticle, and xsecelm.

Referenced by G4ChargeExchangeProcess::GetElementCrossSection(), G4HadronicProcess::GetElementCrossSection(), G4HadronicProcess::GetMeanFreePath(), and SampleZandA().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4CrossSectionDataStore::GetCrossSection ( const G4DynamicParticle part,
const G4Element elm,
const G4Material mat 
)
G4double G4CrossSectionDataStore::GetCrossSection ( const G4DynamicParticle part,
G4int  Z,
G4int  A,
const G4Isotope iso,
const G4Element elm,
const G4Material mat 
)

Definition at line 207 of file G4CrossSectionDataStore.cc.

References dataSetList, G4cout, G4endl, G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4Element::GetName(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), MeV, and nDataSetList.

+ Here is the call graph for this function:

G4double G4CrossSectionDataStore::GetIsoCrossSection ( const G4DynamicParticle part,
G4int  Z,
G4int  A,
const G4Isotope iso,
const G4Element elm,
const G4Material aMaterial,
G4int  index 
)
private

Definition at line 166 of file G4CrossSectionDataStore.cc.

References dataSetList, G4cout, G4endl, G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4Element::GetName(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), MeV, and nDataSetList.

Referenced by GetCrossSection(), and SampleZandA().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4CrossSectionDataStore& G4CrossSectionDataStore::operator= ( const G4CrossSectionDataStore right)
private
G4Element * G4CrossSectionDataStore::SampleZandA ( const G4DynamicParticle part,
const G4Material mat,
G4Nucleus target 
)

Definition at line 234 of file G4CrossSectionDataStore.cc.

References dataSetList, G4cout, G4endl, G4lrint(), G4UniformRand, GetCrossSection(), G4Material::GetElementVector(), GetIsoCrossSection(), G4Element::GetIsotopeVector(), G4DynamicParticle::GetKineticEnergy(), G4Element::GetName(), G4Material::GetNumberOfElements(), G4Element::GetNumberOfIsotopes(), G4Element::GetRelativeAbundanceVector(), G4Element::GetZ(), nDataSetList, G4Nucleus::SetIsotope(), xsecelm, and xseciso.

Referenced by G4HadronElasticProcess::PostStepDoIt(), and G4HadronicProcess::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CrossSectionDataStore::SetVerboseLevel ( G4int  value)
inline

Definition at line 134 of file G4CrossSectionDataStore.hh.

References verboseLevel.

Member Data Documentation

const G4Element* G4CrossSectionDataStore::currentElement
private

Definition at line 119 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

const G4Material* G4CrossSectionDataStore::currentMaterial
private

Definition at line 113 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

std::vector<G4VCrossSectionDataSet*> G4CrossSectionDataStore::dataSetList
private
G4double G4CrossSectionDataStore::elmCrossSection
private

Definition at line 122 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

G4double G4CrossSectionDataStore::elmKinEnergy
private

Definition at line 121 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

const G4Material* G4CrossSectionDataStore::elmMaterial
private

Definition at line 118 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

const G4ParticleDefinition* G4CrossSectionDataStore::elmParticle
private

Definition at line 120 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

G4double G4CrossSectionDataStore::matCrossSection
private

Definition at line 116 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

G4double G4CrossSectionDataStore::matKinEnergy
private

Definition at line 115 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

const G4ParticleDefinition* G4CrossSectionDataStore::matParticle
private

Definition at line 114 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore(), and GetCrossSection().

G4int G4CrossSectionDataStore::nDataSetList
private
G4NistManager* G4CrossSectionDataStore::nist
private

Definition at line 107 of file G4CrossSectionDataStore.hh.

Referenced by G4CrossSectionDataStore().

G4int G4CrossSectionDataStore::verboseLevel
private

Definition at line 125 of file G4CrossSectionDataStore.hh.

Referenced by SetVerboseLevel().

std::vector<G4double> G4CrossSectionDataStore::xsecelm
private

Definition at line 110 of file G4CrossSectionDataStore.hh.

Referenced by GetCrossSection(), and SampleZandA().

std::vector<G4double> G4CrossSectionDataStore::xseciso
private

Definition at line 111 of file G4CrossSectionDataStore.hh.

Referenced by SampleZandA().


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