#include <G4Element.hh>
Definition at line 97 of file G4Element.hh.
G4Element::G4Element | ( | const G4String & | name, | |
const G4String & | symbol, | |||
G4double | Zeff, | |||
G4double | Aeff | |||
) |
Definition at line 74 of file G4Element.cc.
References FatalException, G4endl, G4Exception(), G4AtomicShells::GetBindingEnergy(), G4AtomicShells::GetNumberOfElectrons(), G4AtomicShells::GetNumberOfShells(), and JustWarning.
00076 : fName(name), fSymbol(symbol) 00077 { 00078 G4int iz = (G4int)zeff; 00079 if (zeff<1.) { 00080 G4ExceptionDescription ed; 00081 ed << "Fail to create G4Element " << name 00082 << " Z= " << zeff << " < 1 !" << G4endl; 00083 G4Exception ("G4Element::G4Element()", "mat011", FatalException, ed); 00084 } 00085 if (std::abs(zeff - iz) > perMillion) { 00086 G4ExceptionDescription ed; 00087 ed << "G4Element Warning: " << name << " Z= " << zeff 00088 << " A= " << aeff/(g/mole) << G4endl; 00089 G4Exception("G4Element::G4Element()", "mat017", JustWarning, ed); 00090 } 00091 00092 InitializePointers(); 00093 00094 fZeff = zeff; 00095 fNeff = aeff/(g/mole); 00096 fAeff = aeff; 00097 00098 if(fNeff < 1.0) fNeff = 1.0; 00099 00100 if (fNeff < zeff) { 00101 G4ExceptionDescription ed; 00102 ed << "Fail to create G4Element " << name 00103 << " with Z= " << zeff << " N= " << fNeff 00104 << " N < Z is not allowed" << G4endl; 00105 G4Exception ("G4Element::G4Element()", "mat012", FatalException, ed); 00106 } 00107 00108 fNbOfAtomicShells = G4AtomicShells::GetNumberOfShells(iz); 00109 fAtomicShells = new G4double[fNbOfAtomicShells]; 00110 fNbOfShellElectrons = new G4int[fNbOfAtomicShells]; 00111 00112 AddNaturalIsotopes(); 00113 00114 for (G4int i=0;i<fNbOfAtomicShells;i++) 00115 { 00116 fAtomicShells[i] = G4AtomicShells::GetBindingEnergy(iz, i); 00117 fNbOfShellElectrons[i] = G4AtomicShells::GetNumberOfElectrons(iz, i); 00118 } 00119 ComputeDerivedQuantities(); 00120 }
Definition at line 127 of file G4Element.cc.
References CLHEP::detail::n.
00129 : fName(name),fSymbol(symbol) 00130 { 00131 InitializePointers(); 00132 00133 size_t n = size_t(nIsotopes); 00134 00135 if(0 == nIsotopes) { 00136 AddNaturalIsotopes(); 00137 } else { 00138 theIsotopeVector = new G4IsotopeVector(n,0); 00139 fRelativeAbundanceVector = new G4double[nIsotopes]; 00140 } 00141 }
G4Element::~G4Element | ( | ) | [virtual] |
Definition at line 255 of file G4Element.cc.
00256 { 00257 // G4cout << "### Destruction of element " << fName << " started" <<G4endl; 00258 00259 if (theIsotopeVector) { delete theIsotopeVector; } 00260 if (fRelativeAbundanceVector) { delete [] fRelativeAbundanceVector; } 00261 if (fAtomicShells) { delete [] fAtomicShells; } 00262 if (fNbOfShellElectrons) { delete [] fNbOfShellElectrons; } 00263 if (fIonisation) { delete fIonisation; } 00264 00265 //remove this element from theElementTable 00266 theElementTable[fIndexInTable] = 0; 00267 }
G4Element::G4Element | ( | __void__ & | ) |
Definition at line 147 of file G4Element.cc.
References FatalException, G4endl, G4Exception(), GetA(), G4AtomicShells::GetBindingEnergy(), G4AtomicShells::GetNumberOfElectrons(), G4AtomicShells::GetNumberOfShells(), G4Isotope::GetZ(), and G4Isotope::increaseCountUse().
Referenced by G4GDMLReadMaterials::MixtureRead().
00148 { 00149 if (theIsotopeVector == 0) { 00150 G4ExceptionDescription ed; 00151 ed << "Fail to add Isotope to G4Element " << fName 00152 << " with Z= " << fZeff << " N= " << fNeff << G4endl; 00153 G4Exception ("G4Element::AddIsotope()", "mat013", FatalException, ed); 00154 return; 00155 } 00156 G4int iz = isotope->GetZ(); 00157 00158 // filling ... 00159 if ( fNumberOfIsotopes < theIsotopeVector->size() ) { 00160 // check same Z 00161 if (fNumberOfIsotopes==0) { fZeff = G4double(iz); } 00162 else if (G4double(iz) != fZeff) { 00163 G4ExceptionDescription ed; 00164 ed << "Fail to add Isotope Z= " << iz << " to G4Element " << fName 00165 << " with different Z= " << fZeff << fNeff 00166 << G4endl; 00167 G4Exception ("G4Element::AddIsotope()", "mat014", FatalException, ed); 00168 return; 00169 } 00170 //Z ok 00171 fRelativeAbundanceVector[fNumberOfIsotopes] = abundance; 00172 (*theIsotopeVector)[fNumberOfIsotopes] = isotope; 00173 ++fNumberOfIsotopes; 00174 isotope->increaseCountUse(); 00175 } else { 00176 G4ExceptionDescription ed; 00177 ed << "Fail to add Isotope Z= " << iz << " to G4Element " << fName 00178 << " - more isotopes than declaired " << G4endl; 00179 G4Exception ("G4Element::AddIsotope()", "mat015", FatalException, ed); 00180 return; 00181 } 00182 00183 // filled. 00184 if ( fNumberOfIsotopes == theIsotopeVector->size() ) { 00185 // Compute Neff, Aeff 00186 G4double wtSum=0.0; 00187 00188 fNeff = fAeff = 0.0; 00189 for (size_t i=0;i<fNumberOfIsotopes;i++) { 00190 fAeff += fRelativeAbundanceVector[i]*(*theIsotopeVector)[i]->GetA(); 00191 fNeff += fRelativeAbundanceVector[i]*(*theIsotopeVector)[i]->GetN(); 00192 wtSum += fRelativeAbundanceVector[i]; 00193 } 00194 fAeff /= wtSum; 00195 fNeff /= wtSum; 00196 00197 if(wtSum != 1.0) { 00198 for(size_t i=0; i<fNumberOfIsotopes; ++i) { 00199 fRelativeAbundanceVector[i] /= wtSum; 00200 } 00201 } 00202 00203 fNbOfAtomicShells = G4AtomicShells::GetNumberOfShells(iz); 00204 fAtomicShells = new G4double[fNbOfAtomicShells]; 00205 fNbOfShellElectrons = new G4int[fNbOfAtomicShells]; 00206 00207 for ( G4int j = 0; j < fNbOfAtomicShells; j++ ) 00208 { 00209 fAtomicShells[j] = G4AtomicShells::GetBindingEnergy(iz, j); 00210 fNbOfShellElectrons[j] = G4AtomicShells::GetNumberOfElectrons(iz, j); 00211 } 00212 ComputeDerivedQuantities(); 00213 00214 } 00215 }
void G4Element::decreaseCountUse | ( | ) | [inline] |
G4double G4Element::GetA | ( | ) | const [inline] |
Definition at line 138 of file G4Element.hh.
Referenced by AddIsotope(), G4tgbGeometryDumper::DumpElement(), G4GDMLWriteMaterials::ElementWrite(), G4GammaConversionToMuons::GetCrossSectionPerAtom(), GVFlashShowerParameterisation::GetEffA(), and G4GammaConversionToMuons::PostStepDoIt().
G4double G4Element::GetAtomicMassAmu | ( | ) | const [inline] |
Definition at line 367 of file G4Element.cc.
References FatalException, G4endl, and G4Exception().
Referenced by G4AdjointPhotoElectricModel::AdjointCrossSectionPerAtom(), G4PEEffectModel::SampleSecondaries(), G4PEEffectFluoModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), and G4KleinNishinaModel::SampleSecondaries().
00368 { 00369 if (i<0 || i>=fNbOfAtomicShells) { 00370 G4ExceptionDescription ed; 00371 ed << "Invalid argument " << i << " in for G4Element " << fName 00372 << " with Z= " << fZeff 00373 << " and Nshells= " << fNbOfAtomicShells 00374 << G4endl; 00375 G4Exception("G4Element::GetAtomicShell()", "mat016", FatalException, ed); 00376 return 0.0; 00377 } 00378 return fAtomicShells[i]; 00379 }
G4int G4Element::GetCountUse | ( | ) | const [inline] |
Definition at line 413 of file G4Element.cc.
References G4cout, G4endl, and GetName().
Referenced by G4GDMLReadMaterials::GetElement().
00414 { 00415 // search the element by its name 00416 for (size_t J=0 ; J<theElementTable.size() ; J++) 00417 { 00418 if (theElementTable[J]->GetName() == elementName) 00419 return theElementTable[J]; 00420 } 00421 00422 // the element does not exist in the table 00423 if (warning) { 00424 G4cout << "\n---> warning from G4Element::GetElement(). The element: " 00425 << elementName << " does not exist in the table. Return NULL pointer." 00426 << G4endl; 00427 } 00428 return 0; 00429 }
const G4ElementTable * G4Element::GetElementTable | ( | ) | [static] |
Definition at line 399 of file G4Element.cc.
Referenced by G4ElectroNuclearReaction::ApplyYourself(), G4AdjointCSManager::BuildCrossSectionMatrices(), G4KokoulinMuonNuclearXS::BuildCrossSectionTable(), G4VRangeToEnergyConverter::BuildLossTable(), G4NeutronInelasticXS::BuildPhysicsTable(), G4NeutronHPThermalScatteringData::BuildPhysicsTable(), G4NeutronHPorLEInelasticData::BuildPhysicsTable(), G4NeutronHPJENDLHEData::BuildPhysicsTable(), G4NeutronHPInelasticData::BuildPhysicsTable(), G4NeutronHPFissionData::BuildPhysicsTable(), G4NeutronHPElasticData::BuildPhysicsTable(), G4NeutronHPCaptureData::BuildPhysicsTable(), G4NeutronElasticXS::BuildPhysicsTable(), G4NeutronCaptureXS::BuildPhysicsTable(), G4LENDModel::create_used_target_map(), G4LENDCrossSection::create_used_target_map(), G4NeutronHPInelasticData::DumpPhysicsTable(), G4NeutronHPFissionData::DumpPhysicsTable(), G4NeutronHPElasticData::DumpPhysicsTable(), G4NeutronHPCaptureData::DumpPhysicsTable(), G4NistElementBuilder::FindOrBuildElement(), G4FissLib::G4FissLib(), G4NeutronHPCapture::G4NeutronHPCapture(), G4NeutronHPData::G4NeutronHPData(), G4NeutronHPElastic::G4NeutronHPElastic(), G4NeutronHPFission::G4NeutronHPFission(), G4NeutronHPInelastic::G4NeutronHPInelastic(), G4NeutronHPorLCapture::G4NeutronHPorLCapture(), G4NeutronHPorLEInelastic::G4NeutronHPorLEInelastic(), G4NeutronHPorLElastic::G4NeutronHPorLElastic(), G4NeutronHPorLFission::G4NeutronHPorLFission(), G4NeutronIsotopeProduction::G4NeutronIsotopeProduction(), G4NistManager::GetElement(), G4SeltzerBergerModel::Initialise(), G4NuclNuclDiffuseElastic::Initialise(), G4DiffuseElastic::Initialise(), G4NistManager::PrintG4Element(), G4GDMLRead::StripNames(), and G4NistManager::~G4NistManager().
G4double G4Element::GetfCoulomb | ( | ) | const [inline] |
Definition at line 201 of file G4Element.hh.
Referenced by G4PairProductionRelModel::SampleSecondaries(), G4LivermorePolarizedGammaConversionModel::SampleSecondaries(), G4LivermoreNuclearGammaConversionModel::SampleSecondaries(), G4LivermoreGammaConversionModelRC::SampleSecondaries(), G4LivermoreGammaConversionModel::SampleSecondaries(), G4BetheHeitlerModel::SampleSecondaries(), G4PairProductionRelModel::SetCurrentElement(), and G4eBremsstrahlungRelModel::SetCurrentElement().
G4double G4Element::GetfRadTsai | ( | ) | const [inline] |
size_t G4Element::GetIndex | ( | ) | const [inline] |
Definition at line 182 of file G4Element.hh.
Referenced by G4NeutronHPorLFission::ApplyYourself(), G4NeutronHPorLElastic::ApplyYourself(), G4NeutronHPorLEInelastic::ApplyYourself(), G4NeutronHPorLCapture::ApplyYourself(), G4NeutronHPInelastic::ApplyYourself(), G4NeutronHPFission::ApplyYourself(), G4NeutronHPElastic::ApplyYourself(), G4NeutronHPCapture::ApplyYourself(), G4FissLib::ApplyYourself(), G4QCaptureAtRest::AtRestDoIt(), G4AdjointCSManager::ComputeAdjointCS(), G4NistElementBuilder::FindOrBuildElement(), G4NeutronHPorLFissionData::GetCrossSection(), G4NeutronHPorLElasticData::GetCrossSection(), G4NeutronHPorLEInelasticData::GetCrossSection(), G4NeutronHPorLCaptureData::GetCrossSection(), G4NeutronHPInelasticData::GetCrossSection(), G4NeutronHPFissionData::GetCrossSection(), G4NeutronHPElasticData::GetCrossSection(), G4NeutronHPCaptureData::GetCrossSection(), G4NeutronIsotopeProduction::GetIsotope(), G4NeutronHPThermalScatteringData::IsApplicable(), G4NeutronHPJENDLHEData::IsApplicable(), G4NeutronHPData::MakePhysicsVector(), and G4VEmAdjointModel::SelectCSMatrix().
G4int G4Element::GetIndexZ | ( | ) | const [inline] |
G4IonisParamElm* G4Element::GetIonisation | ( | ) | const [inline] |
Definition at line 209 of file G4Element.hh.
Referenced by G4PairProductionRelModel::SampleSecondaries(), G4LivermorePolarizedGammaConversionModel::SampleSecondaries(), G4LivermoreNuclearGammaConversionModel::SampleSecondaries(), G4LivermoreGammaConversionModelRC::SampleSecondaries(), G4LivermoreGammaConversionModel::SampleSecondaries(), G4eBremsstrahlungModel::SampleSecondaries(), and G4BetheHeitlerModel::SampleSecondaries().
Definition at line 169 of file G4Element.hh.
Referenced by G4QCaptureAtRest::AtRestDoIt(), G4MuonMinusCaptureAtRest::AtRestDoIt(), G4Nucleus::ChooseParameters(), G4GDMLWriteMaterials::ElementWrite(), G4NeutronHPJENDLHEData::GetCrossSection(), G4NeutronHPElementData::Init(), G4ElementIsoCrossSections< IsoIsoCrossSectionType >::Init(), G4QAtomicElectronScattering::PostStepDoIt(), G4NeutronHPChannel::Register(), G4VEmModel::SelectIsotopeNumber(), and G4ElementSelector::SelectZandA().
G4IsotopeVector* G4Element::GetIsotopeVector | ( | ) | const [inline] |
Definition at line 162 of file G4Element.hh.
Referenced by G4QCaptureAtRest::AtRestDoIt(), G4MuonMinusCaptureAtRest::AtRestDoIt(), G4VCrossSectionDataSet::ComputeCrossSection(), G4tgbGeometryDumper::DumpElement(), G4CrossSectionDataStore::GetCrossSection(), G4QAtomicElectronScattering::PostStepDoIt(), G4CrossSectionDataStore::SampleZandA(), G4VCrossSectionDataSet::SelectIsotope(), G4NeutronCaptureXS::SelectIsotope(), and G4ElementSelector::SelectZandA().
G4double G4Element::GetN | ( | ) | const [inline] |
Definition at line 134 of file G4Element.hh.
Referenced by G4MuonMinusCaptureAtRest::AtRestDoIt(), G4Nucleus::ChooseParameters(), G4VEmModel::ComputeCrossSectionPerAtom(), G4EmCalculator::ComputeCrossSectionPerAtom(), G4NeutronHPorLFissionData::GetCrossSection(), G4NeutronHPorLElasticData::GetCrossSection(), G4NeutronHPorLEInelasticData::GetCrossSection(), G4NeutronHPorLCaptureData::GetCrossSection(), G4NeutronHPInelasticData::GetCrossSection(), G4NeutronHPFissionData::GetCrossSection(), G4NeutronHPElasticData::GetCrossSection(), G4NeutronHPCaptureData::GetCrossSection(), G4VComponentCrossSection::GetElasticElementCrossSection(), G4ChargeExchangeProcess::GetElementCrossSection(), G4GlauberGribovCrossSection::GetHadronNucleonXsc(), G4GGNuclNuclCrossSection::GetHadronNucleonXsc(), G4ComponentGGNuclNuclXsc::GetHadronNucleonXsc(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXsc(), G4GlauberGribovCrossSection::GetHadronNucleonXscNS(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS(), G4GlauberGribovCrossSection::GetHadronNucleonXscPDG(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscPDG(), G4GlauberGribovCrossSection::GetHNinelasticXsc(), G4ComponentGGHadronNucleusXsc::GetHNinelasticXsc(), G4VComponentCrossSection::GetInelasticElementCrossSection(), G4GlauberGribovCrossSection::GetNucleusRadius(), G4GGNuclNuclCrossSection::GetNucleusRadius(), G4ComponentGGNuclNuclXsc::GetNucleusRadius(), G4ComponentGGHadronNucleusXsc::GetNucleusRadius(), G4NeutronHPThermalBoost::GetThermalEnergy(), G4VComponentCrossSection::GetTotalElementCrossSection(), G4HadronNucleonXsc::IsApplicable(), and G4VEmModel::SelectIsotopeNumber().
const G4String& G4Element::GetName | ( | ) | const [inline] |
Definition at line 127 of file G4Element.hh.
Referenced by G4Material::AddElement(), G4HadronStoppingProcess::AtRestDoIt(), G4tgbMaterialMixtureByNoAtoms::BuildG4Material(), G4GDMLWriteMaterials::ElementWrite(), G4tgbMaterialMgr::FindOrBuildG4Element(), G4CrossSectionDataStore::GetCrossSection(), GetElement(), G4ChargeExchangeProcess::GetElementCrossSection(), G4EnergyRangeManager::GetHadronicInteraction(), G4VCrossSectionDataSet::GetIsoCrossSection(), G4NeutronHPorLFissionData::IsIsoApplicable(), G4NeutronHPorLElasticData::IsIsoApplicable(), G4NeutronHPorLEInelasticData::IsIsoApplicable(), G4NeutronHPorLCaptureData::IsIsoApplicable(), G4GDMLWriteMaterials::MaterialWrite(), G4WHadronElasticProcess::PostStepDoIt(), G4HadronicProcess::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), G4PenelopePhotoElectricModel::SampleSecondaries(), G4CrossSectionDataStore::SampleZandA(), G4HadronicInteraction::SetMaxEnergy(), and G4HadronicInteraction::SetMinEnergy().
G4bool G4Element::GetNaturalAbandancesFlag | ( | ) | [inline] |
G4int G4Element::GetNbOfAtomicShells | ( | ) | const [inline] |
Definition at line 146 of file G4Element.hh.
Referenced by G4AdjointPhotoElectricModel::AdjointCrossSectionPerAtom(), G4PEEffectModel::SampleSecondaries(), G4PEEffectFluoModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), and G4KleinNishinaModel::SampleSecondaries().
Definition at line 383 of file G4Element.cc.
References FatalException, G4endl, and G4Exception().
Referenced by G4KleinNishinaModel::SampleSecondaries().
00384 { 00385 if (i<0 || i>=fNbOfAtomicShells) { 00386 G4ExceptionDescription ed; 00387 ed << "Invalid argument " << i << " for G4Element " << fName 00388 << " with Z= " << fZeff 00389 << " and Nshells= " << fNbOfAtomicShells 00390 << G4endl; 00391 G4Exception("G4Element::GetNbOfShellElectrons()", "mat016", FatalException, ed); 00392 return 0; 00393 } 00394 return fNbOfShellElectrons[i]; 00395 }
size_t G4Element::GetNumberOfElements | ( | ) | [static] |
Definition at line 406 of file G4Element.cc.
Referenced by G4NeutronHPInelastic::ApplyYourself(), G4NeutronHPFission::ApplyYourself(), G4NeutronHPElastic::ApplyYourself(), G4NeutronHPCapture::ApplyYourself(), G4KokoulinMuonNuclearXS::BuildCrossSectionTable(), G4VRangeToEnergyConverter::BuildLossTable(), G4NeutronInelasticXS::BuildPhysicsTable(), G4NeutronHPThermalScatteringData::BuildPhysicsTable(), G4NeutronHPorLEInelasticData::BuildPhysicsTable(), G4NeutronHPJENDLHEData::BuildPhysicsTable(), G4NeutronHPInelasticData::BuildPhysicsTable(), G4NeutronHPFissionData::BuildPhysicsTable(), G4NeutronHPElasticData::BuildPhysicsTable(), G4NeutronHPCaptureData::BuildPhysicsTable(), G4NeutronElasticXS::BuildPhysicsTable(), G4NeutronCaptureXS::BuildPhysicsTable(), G4LENDModel::create_used_target_map(), G4LENDCrossSection::create_used_target_map(), G4NeutronHPInelasticData::DumpPhysicsTable(), G4NeutronHPFissionData::DumpPhysicsTable(), G4NeutronHPElasticData::DumpPhysicsTable(), G4NeutronHPCaptureData::DumpPhysicsTable(), G4FissLib::G4FissLib(), G4NeutronHPCapture::G4NeutronHPCapture(), G4NeutronHPData::G4NeutronHPData(), G4NeutronHPElastic::G4NeutronHPElastic(), G4NeutronHPFission::G4NeutronHPFission(), G4NeutronHPInelastic::G4NeutronHPInelastic(), G4NeutronHPorLCapture::G4NeutronHPorLCapture(), G4NeutronHPorLEInelastic::G4NeutronHPorLEInelastic(), G4NeutronHPorLElastic::G4NeutronHPorLElastic(), G4NeutronHPorLFission::G4NeutronHPorLFission(), G4NeutronIsotopeProduction::G4NeutronIsotopeProduction(), G4SeltzerBergerModel::Initialise(), G4NuclNuclDiffuseElastic::Initialise(), G4DiffuseElastic::Initialise(), and G4VRangeToEnergyConverter::operator=().
size_t G4Element::GetNumberOfIsotopes | ( | ) | const [inline] |
Definition at line 158 of file G4Element.hh.
Referenced by G4Nucleus::ChooseParameters(), G4VCrossSectionDataSet::ComputeCrossSection(), G4tgbGeometryDumper::DumpElement(), G4GDMLWriteMaterials::ElementWrite(), G4NeutronHPJENDLHEData::GetCrossSection(), G4CrossSectionDataStore::GetCrossSection(), G4NeutronHPElementData::Init(), G4ElementIsoCrossSections< IsoIsoCrossSectionType >::Init(), G4GDMLWriteMaterials::MaterialWrite(), G4NeutronHPChannel::Register(), G4CrossSectionDataStore::SampleZandA(), G4VCrossSectionDataSet::SelectIsotope(), G4NeutronCaptureXS::SelectIsotope(), and G4VEmModel::SelectIsotopeNumber().
G4double* G4Element::GetRelativeAbundanceVector | ( | ) | const [inline] |
Definition at line 166 of file G4Element.hh.
Referenced by G4QCaptureAtRest::AtRestDoIt(), G4MuonMinusCaptureAtRest::AtRestDoIt(), G4Nucleus::ChooseParameters(), G4VCrossSectionDataSet::ComputeCrossSection(), G4tgbGeometryDumper::DumpElement(), G4GDMLWriteMaterials::ElementWrite(), G4NeutronHPJENDLHEData::GetCrossSection(), G4CrossSectionDataStore::GetCrossSection(), G4NeutronHPElementData::Init(), G4ElementIsoCrossSections< IsoIsoCrossSectionType >::Init(), G4QAtomicElectronScattering::PostStepDoIt(), G4NeutronHPChannel::Register(), G4CrossSectionDataStore::SampleZandA(), G4VCrossSectionDataSet::SelectIsotope(), G4NeutronCaptureXS::SelectIsotope(), G4VEmModel::SelectIsotopeNumber(), and G4ElementSelector::SelectZandA().
const G4String& G4Element::GetSymbol | ( | ) | const [inline] |
G4double G4Element::GetZ | ( | ) | const [inline] |
Definition at line 131 of file G4Element.hh.
Referenced by G4AdjointPhotoElectricModel::AdjointCrossSectionPerAtom(), G4NeutronHPThermalScattering::ApplyYourself(), G4QCaptureAtRest::AtRestDoIt(), G4MuonMinusCaptureAtRest::AtRestDoIt(), G4Nucleus::ChooseParameters(), G4AdjointCSManager::ComputeAdjointCS(), G4VCrossSectionDataSet::ComputeCrossSection(), G4VEmModel::ComputeCrossSectionPerAtom(), G4EmCalculator::ComputeCrossSectionPerAtom(), G4PAIySection::ComputeLowEnergyCof(), G4tgbGeometryDumper::DumpElement(), G4GDMLWriteMaterials::ElementWrite(), G4NeutronHPorLFissionData::GetCrossSection(), G4NeutronHPorLElasticData::GetCrossSection(), G4NeutronHPorLEInelasticData::GetCrossSection(), G4NeutronHPorLCaptureData::GetCrossSection(), G4NeutronHPJENDLHEData::GetCrossSection(), G4NeutronHPInelasticData::GetCrossSection(), G4NeutronHPFissionData::GetCrossSection(), G4NeutronHPElasticData::GetCrossSection(), G4NeutronHPCaptureData::GetCrossSection(), G4CrossSectionDataStore::GetCrossSection(), G4GammaConversionToMuons::GetCrossSectionPerAtom(), GVFlashShowerParameterisation::GetEffZ(), G4VComponentCrossSection::GetElasticElementCrossSection(), G4ChargeExchangeProcess::GetElementCrossSection(), G4GlauberGribovCrossSection::GetHadronNucleonXsc(), G4GGNuclNuclCrossSection::GetHadronNucleonXsc(), G4ComponentGGNuclNuclXsc::GetHadronNucleonXsc(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXsc(), G4GlauberGribovCrossSection::GetHadronNucleonXscNS(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS(), G4GlauberGribovCrossSection::GetHadronNucleonXscPDG(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscPDG(), G4GlauberGribovCrossSection::GetHNinelasticXsc(), G4ComponentGGHadronNucleusXsc::GetHNinelasticXsc(), G4VComponentCrossSection::GetInelasticElementCrossSection(), G4NeutronIsotopeProduction::GetIsotope(), G4NeutronHPThermalBoost::GetThermalEnergy(), G4VComponentCrossSection::GetTotalElementCrossSection(), G4NeutronHPElementData::Init(), G4ElementIsoCrossSections< IsoIsoCrossSectionType >::Init(), G4HadronNucleonXsc::IsApplicable(), G4QNGamma::PostStepDoIt(), G4QLowEnergy::PostStepDoIt(), G4QIonIonElastic::PostStepDoIt(), G4QInelastic::PostStepDoIt(), G4QElastic::PostStepDoIt(), G4QDiffraction::PostStepDoIt(), G4QCoherentChargeExchange::PostStepDoIt(), G4QAtomicElectronScattering::PostStepDoIt(), G4GammaConversionToMuons::PostStepDoIt(), G4NeutronHPChannel::Register(), G4XrayRayleighModel::SampleSecondaries(), G4PenelopePhotoElectricModel::SampleSecondaries(), G4PEEffectFluoModel::SampleSecondaries(), G4MuPairProductionModel::SampleSecondaries(), G4MuBremsstrahlungModel::SampleSecondaries(), G4LowEPComptonModel::SampleSecondaries(), G4LivermoreRayleighModel::SampleSecondaries(), G4LivermorePolarizedRayleighModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), G4LivermorePolarizedComptonModel::SampleSecondaries(), G4LivermorePhotoElectricModel::SampleSecondaries(), G4LivermoreComptonModifiedModel::SampleSecondaries(), G4LivermoreComptonModel::SampleSecondaries(), G4KleinNishinaModel::SampleSecondaries(), G4hCoulombScatteringModel::SampleSecondaries(), G4eCoulombScatteringModel::SampleSecondaries(), G4eBremsstrahlungModel::SampleSecondaries(), G4CrossSectionDataStore::SampleZandA(), G4NeutronCaptureXS::SelectIsotope(), G4ElementSelector::SelectZandA(), and G4hQAOModel::StoppingPower().
void G4Element::increaseCountUse | ( | ) | [inline] |
Definition at line 496 of file G4Element.cc.
00497 { 00498 return (this != (G4Element*) &right); 00499 }
Definition at line 489 of file G4Element.cc.
00490 { 00491 return (this == (G4Element*) &right); 00492 }
void G4Element::SetName | ( | const G4String & | name | ) | [inline] |
void G4Element::SetNaturalAbandancesFlag | ( | G4bool | ) | [inline] |
std::ostream& operator<< | ( | std::ostream & | flux, | |
G4ElementTable | ElementTable | |||
) | [friend] |
Definition at line 537 of file G4Element.cc.
00538 { 00539 //Dump info for all known elements 00540 flux << "\n***** Table : Nb of elements = " << ElementTable.size() 00541 << " *****\n" << G4endl; 00542 00543 for (size_t i=0; i<ElementTable.size(); i++) flux << ElementTable[i] 00544 << G4endl << G4endl; 00545 00546 return flux; 00547 }
std::ostream& operator<< | ( | std::ostream & | flux, | |
G4Element & | element | |||
) | [friend] |
std::ostream& operator<< | ( | std::ostream & | flux, | |
G4Element * | element | |||
) | [friend] |
Definition at line 503 of file G4Element.cc.
00504 { 00505 std::ios::fmtflags mode = flux.flags(); 00506 flux.setf(std::ios::fixed,std::ios::floatfield); 00507 G4long prec = flux.precision(3); 00508 00509 flux 00510 << " Element: " << element->fName << " (" << element->fSymbol << ")" 00511 << " Z = " << std::setw(4) << std::setprecision(1) << element->fZeff 00512 << " N = " << std::setw(5) << std::setprecision(1) << element->fNeff 00513 << " A = " << std::setw(6) << std::setprecision(2) 00514 << (element->fAeff)/(g/mole) << " g/mole"; 00515 00516 for (size_t i=0; i<element->fNumberOfIsotopes; i++) 00517 flux 00518 << "\n ---> " << (*(element->theIsotopeVector))[i] 00519 << " abundance: " << std::setw(6) << std::setprecision(2) 00520 << (element->fRelativeAbundanceVector[i])/perCent << " %"; 00521 00522 flux.precision(prec); 00523 flux.setf(mode,std::ios::floatfield); 00524 return flux; 00525 }