Particles and Nuclei Sub-Library: Version 0.910
boson.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_BOSON_H
00024 #define O2SCL_BOSON_H
00025 
00026 #include <string>
00027 #include <iostream>
00028 #include <fstream>
00029 #include <math.h>
00030 #include <o2scl/constants.h>
00031 #include <o2scl/mroot.h>
00032 #include <o2scl/inte.h>
00033 
00034 #include <o2scl/part.h>
00035 
00036 #ifndef DOXYGENP
00037 namespace o2scl {
00038 #endif
00039 
00040   /** \brief Boson class
00041 
00042       For bosons: \n
00043       - if either nu or mu is greater than ms, then they are taken to
00044       be equal to ms \n
00045       - All contributions from any type of condensate are ignored.
00046 
00047       \htmlonly
00048       This Mathematica notebook contains the series expansions
00049       for the bosonic integrals.
00050       functions.
00051       <a href="../extras/boson.nb">
00052       boson.nb</a>, and
00053       <a href="../extras/boson.pdf">
00054       boson.pdf</a>.
00055       \endhtmlonly
00056       \latexonly
00057       This Mathematica notebook contains the series expansions
00058       for the bosonic integrals.
00059       functions.
00060       \begin{verbatim}
00061       doc/o2scl/extras/boson.nb
00062       doc/o2scl/extras/boson.pdf
00063       \end{verbatim}
00064       \endlatexonly
00065   */
00066   class boson : public part {
00067 
00068   public:
00069 
00070     /** \brief The condensate
00071 
00072         The condensate variable is mostly ignored by class boson
00073         and its descendants, and is provided for user storage.
00074     */
00075     double co;
00076 
00077     /// Create a boson with mass \c m and degeneracy \c g 
00078     boson(double m=0.0, double g=0.0);
00079 
00080     /** \brief Calculate properties of massless bosons 
00081         
00082         The expressions used are exact. The chemical
00083         potentials are ignored and the scalar density is
00084         set to zero
00085     */
00086     virtual void massless_calc_mu(double temper);
00087     
00088     /// Return string denoting type ("boson")
00089     virtual const char *type() { return "boson"; }
00090 
00091   };
00092 
00093 #ifndef DOXYGENP
00094 }
00095 #endif
00096 
00097 #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.