Mass formula from Moller, Nix, Myers, Swiatecki and Kratz. More...
#include <nucmass_frdm.h>
This is based on the tables given in Moller95 and Moller97. To load data from the O2scl HDF5 data files, use o2scl_hdf::mnmsk_load().
The data containing an object of type entry for 8979 nuclei is automatically loaded by the constructor. If the file (nucmass/mnmsk.o2) is not found, then is_loaded() will return false and all calls to get_ZN() will return an object with N=Z=0.
There are several entries in the original table which are blank because they are in some way not known, measured, or computable. To distinguish these values from zero, blank entries have been replaced by the number 1.0e99. For convenience, this value is returned by blank().
Definition at line 285 of file nucmass_frdm.h.
Classes | |
| struct | entry |
| Entry structure for Moller, et al. masses. More... | |
Public Member Functions | |
| 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. | |
| nucmass_mnmsk::entry | get_ZN (int l_Z, int l_N) |
| Get the entry for the specified proton and neutron number. More... | |
| double | blank () |
| The value which corresponds to a blank entry. | |
| double | neither () |
| Neither beta+ or beta- is possible. | |
| double | beta_stable () |
| The value which corresponds to a blank entry. | |
| double | beta_plus_and_minus () |
| Both beta+ and beta- are possible. | |
| double | greater_100 () |
| The value is greater than 100. | |
| double | very_large () |
The value is greater than . | |
| virtual const char * | type () |
Return the type, "nucmass_mnmsk". | |
| int | set_data (int n_mass, nucmass_mnmsk::entry *m, std::string ref) |
| Set data. More... | |
Public Member Functions inherited from o2scl::nucmass_table | |
| virtual bool | is_loaded () |
| Returns true if data has been loaded. | |
| virtual double | mass_excess_d (double Z, double N) |
Given Z and N, return the mass excess in MeV. | |
| virtual size_t | get_nentries () |
| Output the number of masses in the table. | |
Public Member Functions inherited from o2scl::nucmass | |
| virtual int | get_nucleus (int Z, int N, nucleus &n) |
Fill n with the information from nucleus with the given neutron and proton number. More... | |
| virtual double | electron_binding (double Z) |
| Return the approximate electron binding energy in MeV. | |
| virtual double | binding_energy (int Z, int N) |
| Return the binding energy in MeV. More... | |
| virtual double | binding_energy_d (double Z, double N) |
| Return the binding energy in MeV. More... | |
| virtual double | total_mass (int Z, int N) |
| Return the total mass of the nucleus (without the electrons) in MeV. | |
| virtual double | total_mass_d (double Z, double N) |
| Return the total mass of the nucleus (without the electrons) in MeV. | |
| virtual double | atomic_mass (int Z, int N) |
| Return the atomic mass of the nucleus in MeV (includes electrons and their binding energy) | |
| virtual double | atomic_mass_d (double Z, double N) |
| Return the atomic mass of the nucleus in MeV (includes electrons and their binding energy) | |
Public Member Functions inherited from o2scl::nucmass_info | |
| int | parse_elstring (std::string ela, int &Z, int &N, int &A) |
| Parse a string representing an element. More... | |
| int | eltoZ (std::string el) |
| Return Z given the element name abbreviation. More... | |
| std::string | Ztoel (size_t Z) |
| Return the element name abbreviation given Z. More... | |
| std::string | Ztoname (size_t Z) |
| Return the element name given Z. | |
| std::string | tostring (size_t Z, size_t N) |
| Return a string of the form "Pb208" for a given Z and N. More... | |
Protected Attributes | |
| std::string | reference |
| The reference for the original data. | |
| nucmass_mnmsk::entry * | mass |
| The array containing the mass data of length ame::n. | |
| int | last |
| The last table index for caching. | |
Protected Attributes inherited from o2scl::nucmass_info | |
| std::vector< std::string > | name_list |
| Element names. | |
| std::map< std::string, int, std::greater< std::string > > | element_table |
| A map containing the proton numbers organized by element abbreviation. | |
| std::string | element_list [nelements] |
| The list of elements organized by proton number. | |
Additional Inherited Members | |
Public Attributes inherited from o2scl::nucmass_table | |
| size_t | n |
| The number of entries. | |
| std::string | reference |
| The reference for the original data. | |
Public Attributes inherited from o2scl::nucmass | |
| double | m_neut |
Neutron mass in (defaults to o2scl_mks::mass_neutron converted into MeV) | |
| double | m_prot |
Proton mass in (defaults to o2scl_mks::mass_proton converted into MeV) | |
| double | m_elec |
Electron mass in (defaults to o2scl_mks::mass_electron converted into MeV) | |
| double | m_amu |
Atomic mass unit in (defaults to o2scl_mks::unified_atomic_mass converted into MeV) | |
Protected Types inherited from o2scl::nucmass_info | |
| typedef std::map< std::string, int, std::greater< std::string > >::iterator | table_it |
| A convenient typedef for an iterator for element_table. | |
Static Protected Attributes inherited from o2scl::nucmass_info | |
| static const int | nelements =119 |
| The number of elements (proton number) | |
| nucmass_mnmsk::entry o2scl::nucmass_mnmsk::get_ZN | ( | int | l_Z, |
| int | l_N | ||
| ) |
This method searches the table using a cached binary search algorithm. It is assumed that the table is sorted first by proton number and then by neutron number.
| int o2scl::nucmass_mnmsk::set_data | ( | int | n_mass, |
| nucmass_mnmsk::entry * | m, | ||
| std::string | ref | ||
| ) |
This function is used by the HDF I/O routines.
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).