Particles and Nuclei Sub-Library: Version 0.910
nucleus.h
00001 /*
00002   -------------------------------------------------------------------
00003   
00004   Copyright (C) 2006-2012, Andrew W. Steiner
00005   
00006   This file is part of O2scl.
00007   
00008   O2scl is free software; you can redistribute it and/or modify
00009   it under the terms of the GNU General Public License as published by
00010   the Free Software Foundation; either version 3 of the License, or
00011   (at your option) any later version.
00012   
00013   O2scl is distributed in the hope that it will be useful,
00014   but WITHOUT ANY WARRANTY; without even the implied warranty of
00015   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016   GNU General Public License for more details.
00017   
00018   You should have received a copy of the GNU General Public License
00019   along with O2scl. If not, see <http://www.gnu.org/licenses/>.
00020 
00021   -------------------------------------------------------------------
00022 */
00023 #ifndef O2SCL_NUCLEUS_H
00024 #define O2SCL_NUCLEUS_H
00025 
00026 #include <o2scl/part.h>
00027 
00028 #ifndef DOXYGENP
00029 namespace o2scl {
00030 #endif
00031 
00032   /** \brief A simple nucleus class
00033       
00034       The variable part::m is typically used for the mass of the
00035       nucleus with no electrons.
00036 
00037       The binding energy of the nucleus (\ref be) is typically defined
00038       as the mass of the nucleus (without the electrons) minus Z times
00039       the mass of the proton minus N times the mass of the neutron.
00040 
00041       The mass excess (\ref be) is defined as the mass of the nucleus
00042       including the electron contribution minus a times the mass of
00043       the atomic mass unit.
00044 
00045       The variable \ref part::inc_rest_mass is set to \c false by
00046       default, to insure that energies and chemical potentials do not
00047       include the rest mass. This is typically appropriate for nuclei.
00048       
00049   */
00050   class nucleus : public part {
00051   public:
00052 
00053     nucleus();
00054 
00055     /// Proton number
00056     int Z;
00057     /// Neutron number
00058     int N;
00059     /// Atomic number
00060     int A;
00061     /// Mass excess in \f$ \mathrm{fm}^{-1} \f$ 
00062     double mex;
00063     /** \brief Binding energy in \f$ \mathrm{fm}^{-1} \f$ 
00064         (with a minus sign for bound nuclei)
00065     */
00066     double be;
00067   };
00068 
00069 #ifndef DOXYGENP
00070 }
00071 #endif
00072 
00073 #endif
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Friends

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.