55 verboseLevel(0),minKinEnergy(0.0),maxKinEnergy(100*
TeV),
name(nam)
109 iso = (*isoVector)[j];
112 fact += abundVector[j];
131 if(fact > 0.0) { xsec /= fact; }
140 G4cout <<
"G4VCrossSectionDataSet::GetCrossSection per element ERROR: "
141 <<
" there is no cross section for "
147 "G4VCrossSectionDataSet::GetElementCrossSection is absent");
157 G4cout <<
"G4VCrossSectionDataSet::GetCrossSection per isotope ERROR: "
158 <<
" there is no cross section for "
165 "G4VCrossSectionDataSet::GetIsoCrossSection is absent");
181 sum += abundVector[j];
183 iso = (*isoVector)[j];
199 outFile <<
"The description for this cross section data set has not been written yet.\n";
size_t GetNumberOfIsotopes() const
virtual G4bool IsIsoApplicable(const G4DynamicParticle *, G4int Z, G4int A, const G4Element *elm=0, const G4Material *mat=0)
virtual ~G4VCrossSectionDataSet()
std::vector< G4Isotope * > G4IsotopeVector
G4double GetKineticEnergy() const
void DeRegister(G4VCrossSectionDataSet *)
virtual void CrossSectionDescription(std::ostream &) const
G4VCrossSectionDataSet(const G4String &nam="")
virtual void BuildPhysicsTable(const G4ParticleDefinition &)
virtual G4double GetElementCrossSection(const G4DynamicParticle *, G4int Z, const G4Material *mat=0)
const G4String & GetName() const
G4ParticleDefinition * GetDefinition() const
static G4NistManager * Instance()
const G4String & GetParticleName() const
static constexpr double TeV
G4int GetNistFirstIsotopeN(G4int Z) const
virtual void DumpPhysicsTable(const G4ParticleDefinition &)
virtual G4bool IsElementApplicable(const G4DynamicParticle *, G4int Z, const G4Material *mat=0)
G4GLOB_DLL std::ostream G4cout
double A(double temperature)
static G4CrossSectionDataSetRegistry * Instance()
G4double * GetRelativeAbundanceVector() const
G4double GetIsotopeAbundance(G4int Z, G4int N) const
G4int GetNumberOfNistIsotopes(G4int Z) const
G4IsotopeVector * GetIsotopeVector() const
virtual G4double GetIsoCrossSection(const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso=0, const G4Element *elm=0, const G4Material *mat=0)
void Register(G4VCrossSectionDataSet *)
static constexpr double MeV
const G4String & GetName() const
G4double ComputeCrossSection(const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
virtual G4Isotope * SelectIsotope(const G4Element *, G4double kinEnergy)