54 : fName(Name), fZ(Z), fN(
N), fA(
A), fm(il)
58 ed <<
"Wrong Isotope " << Name <<
" Z= " << Z <<
G4endl;
63 ed <<
"Wrong Isotope " << Name <<
" Z= " << Z <<
" > N= " <<
N <<
G4endl;
70 theIsotopeTable.push_back(
this);
71 fIndexInTable = theIsotopeTable.size() - 1;
90 std::ios::fmtflags mode = flux.flags();
91 flux.setf(std::ios::fixed, std::ios::floatfield);
92 G4long prec = flux.precision(3);
96 <<
" Isotope: " << std::setw(5) << isotope->fName
97 <<
" Z = " << std::setw(2) << isotope->fZ
98 <<
" N = " << std::setw(3) << isotope->fN
99 <<
" A = " << std::setw(6) << std::setprecision(2)
100 << (isotope->fA)/(g/mole) <<
" g/mole";
103 flux.precision(prec);
104 flux.setf(mode, std::ios::floatfield);
121 flux <<
"\n***** Table : Nb of isotopes = " << IsotopeTable.size() <<
" *****\n" <<
G4endl;
123 for (
auto& i : IsotopeTable) {
143 for (
auto& J : theIsotopeTable) {
144 if (J->GetName() == isotopeName) {
151 G4cout <<
"\n---> warning from G4Isotope::GetIsotope(). The isotope: " << isotopeName
152 <<
" does not exist in the table. Return NULL pointer." <<
G4endl;
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
std::ostream & operator<<(std::ostream &flux, const G4Isotope *isotope)
std::vector< G4Isotope * > G4IsotopeTable
G4GLOB_DLL std::ostream G4cout
static const G4IsotopeTable * GetIsotopeTable()
G4bool operator!=(const G4Isotope &) const
static size_t GetNumberOfIsotopes()
static G4Isotope * GetIsotope(const G4String &name, G4bool warning=false)
G4Isotope(const G4String &name, G4int z, G4int n, G4double a=0., G4int mlevel=0)
G4bool operator==(const G4Isotope &) const
G4double GetAtomicMass(G4int Z, G4int N) const
static G4NistManager * Instance()