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");
78 G4String file = getenv(
"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
void SetAtomicMass(G4int A)
virtual G4IsotopeProperty * GetIsotopeByIsoLvl(G4int Z, G4int A, G4int lvl=0)
G4int GetAtomicNumber() const
G4IsotopeMagneticMomentTable & operator=(const G4IsotopeMagneticMomentTable &right)
G4int GetIsomerLevel() const
void SetMagneticMoment(G4double M)
virtual G4IsotopeProperty * GetIsotope(G4int Z, G4int A, G4double E)
virtual ~G4IsotopeMagneticMomentTable()
G4IsotopeList fIsotopeList
G4GLOB_DLL std::ostream G4cout
G4double GetEnergy() const
static const G4double levelTolerance
static const G4double A[nN]
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
void SetEnergy(G4double E)
virtual G4bool FindIsotope(G4IsotopeProperty *property)
G4IsotopeMagneticMomentTable()
G4int GetVerboseLevel() const
static const double eplus
void SetAtomicNumber(G4int Z)
G4int GetAtomicMass() const
static const G4double nuclearMagneton
void SetIsomerLevel(G4int level)