Semi-empirical mass formula. More...
#include <nucmass.h>
A simple semi-empirical mass formula of the form
where the pairing energy is given by
which is equivalent to the traditional prescription
when and
and integers.
There is an example of the usage of this class given in Nuclear mass fit example.
Public Types | |
typedef boost::numeric::ublas::vector< double > | ubvector |
![]() | |
typedef boost::numeric::ublas::vector< double > | ubvector |
Public Member Functions | |
virtual const char * | type () |
Return the type, "nucmass_semi_empirical" . | |
virtual double | mass_excess_d (double Z, double N) |
Given Z and N , return the mass excess in MeV. | |
virtual double | mass_excess (int Z, int N) |
Given Z and N , return the mass excess in MeV. | |
virtual int | fit_fun (size_t nv, const ubvector &x) |
Fix parameters from an array for fitting. | |
virtual int | guess_fun (size_t nv, ubvector &x) |
Fill array with guess from present values for fitting. | |
![]() | |
virtual bool | is_included (int Z, int N) |
Return false if the mass formula does not include specified nucleus. | |
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) | |
![]() | |
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... | |
Public Attributes | |
double | B |
Binding energy (negative and in MeV, default -16) | |
double | Sv |
Symmetry energy (in MeV, default 23.7) | |
double | Ss |
Surface energy (in MeV, default 18) | |
double | Ec |
Coulomb energy (in MeV, default 0.7) | |
double | Epair |
Pairing energy (MeV, default 13.0) | |
![]() | |
size_t | nfit |
Number of fitting parameters. | |
![]() | |
double | m_neut |
Neutron mass in ![]() | |
double | m_prot |
Proton mass in ![]() | |
double | m_elec |
Electron mass in ![]() | |
double | m_amu |
Atomic mass unit in ![]() | |
Additional Inherited Members | |
![]() | |
typedef std::map< std::string, int, std::greater< std::string > >::iterator | table_it |
A convenient typedef for an iterator for element_table. | |
![]() | |
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. | |
![]() | |
static const int | nelements =119 |
The number of elements (proton number) | |
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).