59 if ( !getenv(
"G4IONMAGNETICMOMENT")) {
62 G4cout <<
"G4IsotopeMagneticMomentTable::G4IsotopeMagneticMomentTable(): "
63 <<
"Please setenv G4IONMAGNETICMOMENT for the magnetic moment data."
68 "Please setenv G4IONMAGNETICMOMENT");
74 "Please setenv G4IONMAGNETICMOMENT");
79 std::ifstream DataFile(file);
84 G4cout <<
"G4IsotopeMagneticMomentTable::G4IsotopeMagneticMomentTable(): "
85 << file <<
" is not found " <<
G4endl;
91 "Can not open G4IONMAGNETICMOMENT file");
95 char inputChars[80]={
' '};
97 while ( !DataFile.eof() ) {
98 DataFile.getline(inputChars, 80);
100 G4int ionA, ionZ, ionJ, isomer;
104 if (inputChars[0] !=
'#' && inputLine.length() != 0) {
105 std::istringstream tmpstream(inputLine);
106 tmpstream >> ionZ >> ionName >> ionA
108 >> ionLife >> ionLifeUnit
static constexpr double hbar_Planck
void SetEnergy(G4double E)
static constexpr double MeV
static constexpr double keV
static const G4double levelTolerance
G4IsotopeMagneticMomentTable & operator=(const G4IsotopeMagneticMomentTable &right)
virtual G4bool FindIsotope(G4IsotopeProperty *property)
void SetAtomicNumber(G4int Z)
static constexpr double proton_mass_c2
static constexpr double c_squared
G4int GetIsomerLevel() const
G4IsotopeMagneticMomentTable()
void SetAtomicMass(G4int A)
virtual G4IsotopeProperty * GetIsotopeByIsoLvl(G4int Z, G4int A, G4int lvl=0)
G4int GetAtomicMass() const
G4int GetVerboseLevel() const
double A(double temperature)
void SetIsomerLevel(G4int level)
virtual ~G4IsotopeMagneticMomentTable()
static const G4double nuclearMagneton
G4IsotopeList fIsotopeList
static constexpr double eplus
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
G4int GetAtomicNumber() const
void SetMagneticMoment(G4double M)
G4GLOB_DLL std::ostream G4cout
G4double GetEnergy() const
virtual G4IsotopeProperty * GetIsotope(G4int Z, G4int A, G4double E, G4Ions::G4FloatLevelBase flb=G4Ions::G4FloatLevelBase::no_Float)