00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef O2SCL_CLASSICAL_H
00024 #define O2SCL_CLASSICAL_H
00025
00026 #include <string>
00027 #include <iostream>
00028 #include <fstream>
00029 #include <cmath>
00030 #include <o2scl/constants.h>
00031 #include <o2scl/mroot.h>
00032 #include <o2scl/inte.h>
00033 #include <o2scl/part.h>
00034 #include <o2scl/fermion.h>
00035 #include <o2scl/boson.h>
00036
00037 #ifndef DOXYGENP
00038 namespace o2scl {
00039 #endif
00040
00041
00042
00043
00044
00045
00046
00047
00048 class classical : public fermion, public boson {
00049
00050 public:
00051
00052
00053
00054
00055 classical(double m=0.0, double g=0.0);
00056
00057 virtual int calc_mu(const double temper);
00058 virtual int calc_density(const double temper);
00059 virtual int pair_mu(const double temper);
00060 virtual int pair_density(const double temper);
00061
00062
00063 virtual const char *type() { return "classical"; }
00064
00065 #ifndef DOXYGEN_INTERNAL
00066
00067 protected:
00068
00069 friend class io_tlate<classical>;
00070
00071 #endif
00072
00073 };
00074
00075 template<> int io_tlate<classical>::input
00076 (cinput *co, in_file_format *ins, classical *c);
00077 template<> int io_tlate<classical>::output
00078 (coutput *co, out_file_format *outs, classical *c);
00079 template<> const char *io_tlate<classical>::type();
00080
00081 typedef io_tlate<classical> classical_io_type;
00082
00083 #ifndef DOXYGENP
00084 }
00085 #endif
00086
00087 #endif