ame_mass Class Reference

Mass formula from the Atomic Mass Evaluation (2005 and 1993). More...

#include <nuclear_mass.h>

Inheritance diagram for ame_mass:

nuclear_mass_disc nuclear_mass nuclear_mass_info

Detailed Description

Mass formula from the Atomic Mass Evaluation (2005 and 1993).

This class provides an interface to the atomic mass table using data from Audi95 and Audi03.

There are four data sets, selected by the specification of the version string in the constructor.

If any string other than these four is used, the default data is loaded. If the constructor cannot find the data file (e.g. because of a broken installation), then ame::is_loaded() returns false.

The 1995 data provided the binding energy stored in ame_entry::be and ame_entry::dbe, while the 2003 data provided the binding energy divided by the atomic number stored in ame_entry::beoa and ame_entry::dbeoa. When the 1995 data is used ame_entry::beoa and ame_entry::dbeoa are calculated automatically, and when the 2003 data is used ame_entry::be and ame_entry::dbe are calculated automatically.

Note that blank entries in the original table that correspond to columns represented by the type double are set to zero arbitrarily.

Note that all uncertainties are 1 sigma uncertainties.

Warning:
There are strict definitions of the atomic mass unit and other constants that are defined by the 1995 and 2003 atomic mass evaluations which are not used at present.
Idea for future:
Create a caching and more intelligent search system for the table. The table is sorted by A and then N, so we could probably just copy the search routine from mnmsk_mass, which is sorted by Z and then N.
Idea for future:
Use the atomic mass unit and other constants defined in the evaulation

Definition at line 673 of file nuclear_mass.h.


Public Member Functions

 ame_mass (std::string version="")
 Create a collection specified by version.
virtual const char * type ()
 Return the type, "ame_mass".
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 and N, return the mass excess in MeV.
ame_entry get_ZN (int l_Z, int l_N)
 Get element with Z=l_Z and N=l_N (e.g. 82,126).
ame_entry get_ZA (int l_Z, int l_A)
 Get element with Z=l_Z and A=l_A (e.g. 82,208).
ame_entry get_elA (std::string l_el, int l_A)
 Get element with name l_el and A=l_A (e.g. "Pb",208).
ame_entry get (std::string nucleus)
 Get element with string (e.g. "Pb208").
bool is_loaded ()
 Returns true if the constructor succesfully loaded the data.

Data Fields

int n
 The number of entries (about 3000).
std::string * short_names
 The short names of the columns (length 16).
std::string * col_names
 The long names of the columns (length 16).
std::string reference
 The reference for the original data.
ame_entrymass
 The array containing the mass data of length ame::n.

Protected Attributes

bool loaded
 True if loading the data was successful.

The documentation for this class was generated from the following file:

Documentation generated with Doxygen and provided under the GNU Free Documentation License. See License Information for details.

Project hosting provided by SourceForge.net Logo, O2scl Sourceforge Project Page