Class nucmass_ame2 (o2scl)¶
-
class nucmass_ame2 : public o2scl::nucmass_table¶
Note
This version avoids storing a raw pointer, supports the NUBASE data, and provides more field information
Accuracy modes
-
static const int measured = 0¶
Measured value from source data.
-
static const int estimated = 1¶
Value estimated in source data.
-
static const int not_calculable = 2¶
Value listed in data as not calculable.
-
static const int intl_computed = 3¶
Value computed by .
-
static const int unc_less_than_half_eV = 4¶
The uncertainty is less than half of an eV.
-
static const int blank = 5¶
The value is blank.
-
static const int blank_unc = 6¶
The uncertainty is blank.
-
static const int unstable = 7¶
The nucleus is unstable.
-
static const int part_unstable = 8¶
-
static const int lower_limit = 9¶
-
static const int upper_limit = 10¶
-
static const int does_not_exist = 11¶
-
static const int approximate = 12¶
The stored value is only approximate.
-
int last¶
The last table index for caching.
-
inline void load(std::string name = "20", bool exp_only = false)¶
Read data for o2scl::nucmass_ame from an HDF table specified in a file.
- Todo:
Why was this moved here from hdf_nucmass.h ?
-
void load_ext(std::string name, std::string filename, std::string nubase_file, bool exp_only = false)¶
Read data for o2scl::nucmass_ame from an HDF table specified in a file.
- Todo:
Why was this moved here from hdf_nucmass.h ?
-
inline int parse(std::string s1, std::string s2, double &d1, double &d2, int &acc)¶
Parse strings
s1
ands2
from the AME into a value,d1
, an uncertainty,d2
, and an accuracy flag,acc
.If string
s1
has an asterisk, thend1
andd2
are set to zero andacc
is set to nucmass_ame::not_calculable.If string
s2
contains the letter ‘a’, thend2
is set to zero andass
is set to nucmass_ame::unc_less_than_half_eV. The value of d1 is computed fromstod_nothrow()
.Otherwise, if string
s1
has a pound sign, thenacc
is set to nucmass_ame::estimated, otherwise,acc
is set to nucmass_ame::measured. The values ofd1
andd2
are computed froms1
ands2
usingstod_nothrow()
.If either of the stod_nothrow() calls returns a non-zero value, then the error handler is called.
-
inline virtual const char *type()¶
Return the type,
"nucmass_ame2"
.
-
virtual bool is_included(int Z, int N)¶
Return false if the mass formula does not include specified nucleus.
-
virtual double mass_excess(int Z, int N)¶
Given
Z
andN
, return the mass excess in MeV.
-
inline virtual bool is_loaded()¶
Returns true if data has been loaded.
-
inline virtual size_t get_nentries()¶
Return number of entries.
-
inline std::string get_reference()¶
Return the reference.
-
class entry¶
Atomic mass entry structure.
Atomic mass entry data object for o2scl::nucmass_ame.
This has to be a struct, not a class, so that it can be processed by the HDF5 make table functions.
Public Members
-
int NMZ¶
N-Z.
-
int N¶
Neutron number.
-
int Z¶
Proton number.
-
int A¶
Mass number.
-
char el[4]¶
Element name.
-
char orig[5]¶
Data origin.
-
double mass¶
Mass excess (in keV)
-
double dmass¶
Mass excess uncertainty (in keV)
-
int mass_acc¶
Mass accuracy flag.
-
double be¶
Binding energy (in keV, given in the ‘95 data)
-
double dbe¶
Binding energy uncertainty (in keV, given in the ‘95 data)
-
int be_acc¶
Binding energy accuracy flag.
-
double beoa¶
Binding energy / A (in keV, given in the ‘03 data)
-
double dbeoa¶
Binding energy / A uncertainty (in keV, given in the ‘03 data)
-
int beoa_acc¶
Binding energy / A accuracy flag.
-
char bdmode[3]¶
Beta decay mode.
-
double bde¶
Beta-decay energy (in keV)
-
double dbde¶
Beta-decay energy uncertainty (in keV)
-
int bde_acc¶
Beta-decay energy accuracy flag.
-
int A2¶
Mass number (reported twice in original table)
-
double amass¶
Atomic mass (in keV)
-
double damass¶
Atomic mass uncertainty (in keV)
-
int amass_acc¶
Atomic mass accuracy flag.
-
std::vector<entry_nubase_20> props¶
NUBASE properties.
-
int NMZ¶
-
class entry_nubase_20¶
Data structure for a row in the NUBASE file.
Note
All character arrays have space for an extra terminating character
Public Members
-
char Znote¶
Note.
-
char A_el[6]¶
Element name.
-
char isomer¶
Type field (isomer, resonance, etc.)
-
double mass¶
Mass excess (in keV)
-
double dmass¶
Mass excess uncertainty (in keV)
-
int mass_acc¶
Desc.
-
double exc_energy¶
Excitation energy.
-
double dexc_energy¶
Excitation energy uncertainty.
-
int exc_energy_acc¶
Desc.
-
char origin[3]¶
Excitation energy origin.
-
char isomer_unc¶
Isomer uncertainty.
-
char isomer_inv¶
Isomer inversion.
-
double hlife¶
Half-life.
-
int hlife_acc¶
Desc.
-
char hl_unit[3]¶
Half-life unit.
-
char dhlife[8]¶
Half-life uncertainty.
-
char spinp[15]¶
Spin and parity.
-
int ENSDF_year¶
Isospin multiplet.
-
int discovery¶
Year of discovery.
-
char decay_intensity[91]¶
Decay mode and intensity.
-
char Znote¶
-
static const int measured = 0¶