Class nucmass (o2scl)

O2scl_part : Class List

class o2scl::nucmass : public o2scl::nucmass_info

Nuclear mass formula base [abstract base].

(See also the discussion in nuclei_section.)

This is abstract base class for the nuclear mass formulas. Some mass formulas are undefined for sufficiently exotic nuclei. You can use the function is_included() to find if a particular is included or not in a particular mass formula.

The quantities below are returned in units of MeV. The functions include a version which takes Z and N as integers and a version with a suffix "_d" which takes Z and N as double-precision numbers.

The mass excess is given by mass_excess() and mass_excess_d() .

Binding energies (binding_energy() and binding_energy_d() ) are determined from mass excesses by

\[ \mathrm{binding~energy} = A u - Z \left(m_p + m_e\right) - N m_n + \mathrm{mass~excess} \]
The neutron, proton, and electron masses and atomic mass unit are stored in m_prot, m_neut, m_elec, and m_amu . By default, this are assigned to the values in o2scl_mks times o2scl_const::hc_mev_fm , but these default values are modified in the constructors of some children classes.

Total masses, as returned by total_mass() and total_mass_d() , are the mass of the nuclide without the electron mass or binding energy contribution

\[ \mathrm{total~mass} = \mathrm{mass~excess} + A u - Z m_e \]

Atomic masses are the total mass with the electron mass and binding energy contributions (see atomic_mass() and atomic_mass_d() ). Electron binding energies are computed in electron_binding() and approximated with

\[ 14.4381 \times 10^{-6} Z^{2.39} + 1.55468 \times 10^{-12} Z^{5.35}~\mathrm{MeV} \]

as in Eq. A4 of [Lunney03] .

Generally, descendants of this class only need to provide an implementation of mass_excess() and mass_excess_d() and possibly a new version of is_included() to be fully functional.

Subclassed by o2scl::nucmass_fit_base, o2scl::nucmass_table

Base masses

double m_neut

Neutron mass in \( \mathrm{MeV} \) (defaults to o2scl_mks::mass_neutron converted into MeV)

double m_prot

Proton mass in \( \mathrm{MeV} \) (defaults to o2scl_mks::mass_proton converted into MeV)

double m_elec

Electron mass in \( \mathrm{MeV} \) (defaults to o2scl_mks::mass_electron converted into MeV)

double m_amu

Atomic mass unit in \( \mathrm{MeV} \) (defaults to o2scl_mks::unified_atomic_mass converted into MeV)

Public Functions

nucmass()
~nucmass()
const char *type()

Return the type, "nucmass".

bool is_included(int Z, int N)

Return false if the mass formula does not include specified nucleus.

int get_nucleus(int Z, int N, nucleus &n)

Fill n with the information from nucleus with the given neutron and proton number.

All masses are given in \(\mathrm{fm}^{-1}\). The total mass (withouth the electrons) is put in part::m and part::ms, the binding energy is placed in nucleus::be, the mass excess in nucleus::mex and the degeneracy (part::g) is arbitrarily set to 1 for even A nuclei and 2 for odd A nuclei.

double mass_excess(int Z, int N) = 0

Given Z and N, return the mass excess in MeV [abstract].

double mass_excess_d(double Z, double N) = 0

Given Z and N, return the mass excess in MeV [abstract].

double electron_binding(double Z)

Return the approximate electron binding energy in MeV.

double binding_energy(int Z, int N)

Return the binding energy in MeV.

The binding energy is defined to be negative for bound nuclei, thus the binding energy per baryon of Pb-208 is about -8*208 = -1664 MeV.

double binding_energy_d(double Z, double N)

Return the binding energy in MeV.

The binding energy is defined to be negative for bound nuclei, thus the binding energy per baryon of Pb-208 is about -8*208 = -1664 MeV.

double total_mass(int Z, int N)

Return the total mass of the nucleus (without the electrons) in MeV.

double total_mass_d(double Z, double N)

Return the total mass of the nucleus (without the electrons) in MeV.

double atomic_mass(int Z, int N)

Return the atomic mass of the nucleus in MeV (includes electrons and their binding energy)

double atomic_mass_d(double Z, double N)

Return the atomic mass of the nucleus in MeV (includes electrons and their binding energy)