eos.h
/*
* Definition of Lorene classes Eos
* Eos_poly
* Eos_poly_newt
* Eos_incomp
* Eos_incomp_newt
* Eos_strange
* Eos_strange_c
*
*/
/*
* Copyright (c) 2000-2001 Eric Gourgoulhon
*
* This file is part of LORENE.
*
* LORENE is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* LORENE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with LORENE; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#ifndef __EOS_H_
#define __EOS_H_
/*
* $Id: eos.h,v 1.22 2015/08/04 14:41:28 j_novak Exp $
* $Log: eos.h,v $
* Revision 1.22 2015/08/04 14:41:28 j_novak
* Back to previous version for Eos_CompOSE. Enthalpy-consistent EoS can be accessed using Eos_consistent class (derived from Eos_CompOSE).
*
* Revision 1.21 2015/03/17 14:19:59 j_novak
* New class Hot_eos to deal with temperature-dependent EOSs.
*
* Revision 1.20 2014/10/13 08:52:33 j_novak
* Lorene classes and functions now belong to the namespace Lorene.
*
* Revision 1.19 2014/10/06 15:09:39 j_novak
* Modified #include directives to use c++ syntax.
*
* Revision 1.18 2012/10/26 14:09:13 e_gourgoulhon
* Added new class Eos_Fermi
*
* Revision 1.17 2011/06/16 10:49:18 j_novak
* New class Eos_mag for EOSs depending on density and magnetic field.
*
* Revision 1.16 2010/02/02 13:21:52 j_novak
* New class Eos_Compstar.
*
* Revision 1.15 2010/01/23 16:27:11 e_gourgoulhon
* Improved documentation.
*
* Revision 1.14 2005/05/22 20:49:12 k_taniguchi
* Introduction of a new class Eos_fit_AkmalPR.
*
* Revision 1.13 2004/09/26 18:51:47 k_taniguchi
* Introduction of new classes Eos_fitting, Eos_fit_SLy4, and Eos_fit_FPS
*
* Revision 1.12 2004/05/07 08:08:29 k_taniguchi
* Add the case of Eos_multi_poly.C
*
* Revision 1.11 2004/03/22 16:10:20 j_novak
* Excluding some files
*
* Revision 1.10 2004/03/22 13:12:40 j_novak
* Modification of comments to use doxygen instead of doc++
*
* Revision 1.9 2004/01/14 15:52:26 f_limousin
* Added methods calcule, nbar_ent, der_nbar_ent and der_ener_ent for Scalar.
*
* Revision 1.8 2003/12/08 15:48:12 m_bejger
* GlendNH3 (Glendenning 1985, case 3) added
*
* Revision 1.7 2002/10/16 14:36:28 j_novak
* Reorganization of #include instructions of standard C++, in order to
* use experimental version 3 of gcc.
*
* Revision 1.6 2002/09/13 09:17:31 j_novak
* Modif. commentaires
*
* Revision 1.5 2002/06/17 14:05:16 j_novak
* friend functions are now also declared outside the class definition
*
* Revision 1.4 2002/04/11 13:27:48 e_gourgoulhon
* *** empty log message ***
*
* Revision 1.3 2002/04/09 15:19:03 e_gourgoulhon
* Add EOS number 100 in the comments of eos_from_file
*
* Revision 1.2 2002/04/09 14:32:14 e_gourgoulhon
* 1/ Added extra parameters in EOS computational functions (argument par)
* 2/ New class MEos for multi-domain EOS
*
* Revision 1.1.1.1 2001/11/20 15:19:27 e_gourgoulhon
* LORENE
*
* Revision 2.15 2001/09/12 15:54:17 eric
* Modif documentation eos_from_file.
*
* Revision 2.14 2001/06/13 14:12:18 eric
* Modif commentaires (mise en conformite Doc++ 3.4.7)
*
* Revision 2.13 2001/02/07 09:33:42 eric
* Suppression des fonctions derent_ent et derent_ent_p.
* Ajout des fonctions donnant les derivees de l'EOS:
* der_nbar_ent
* der_ener_ent
* der_press_ent
*
* Revision 2.12 2000/11/23 14:45:33 eric
* Ajout de l'EOS Eos_strange_cr.
*
* Revision 2.11 2000/11/22 19:28:45 eric
* Ajout de #include "eos_tabul.h" a la fin.
*
* Revision 2.10 2000/10/25 10:55:08 eric
* Eos_strange: modif commentaires.
*
* Revision 2.9 2000/10/24 15:28:43 eric
* Ajout de l'EOS matiere etrange (Eos_strange).
*
* Revision 2.8 2000/06/20 08:34:20 eric
* Ajout des membres get_gam(), ... a Eos_ploy
*
* Revision 2.7 2000/02/14 14:43:22 eric
* Modif commentaires.
*
* Revision 2.6 2000/02/14 14:32:46 eric
* Ajout des constructeurs par lecture de fichier formate.
*
* Revision 2.5 2000/01/21 16:21:12 eric
* Modif commentaires.
*
* Revision 2.4 2000/01/21 15:16:10 eric
* Ajout de la fonction identify()
* Ajout de la fonction de construction a partir d'un fichier
* static Eos* Eos::eos_from_file(FILE* ).
* Ajout des operateurs de comparaison == et !=
*
* Revision 2.3 2000/01/18 16:10:57 eric
* Ajout des EOS Eos_incomp et Eos_incomp_newt.
*
* Revision 2.2 2000/01/18 15:13:28 eric
* Ajout de l'equation d'etat Eos_poly_newt.
*
* Revision 2.1 2000/01/18 13:46:50 eric
* Premiere version operationnelle
*
* Revision 2.0 2000/01/18 10:46:08 eric
* *** empty log message ***
*
*
* $Header: /cvsroot/Lorene/C++/Include/eos.h,v 1.22 2015/08/04 14:41:28 j_novak Exp $
*
*/
// Standard C++
#include "headcpp.h"
// Headers C
#include <cstdio>
// Lorene classes
namespace Lorene {
class Tbl ;
class Cmp ;
class Scalar ;
class Param ;
//------------------------------------//
// base class Eos //
//------------------------------------//
class Eos {
// Data :
// -----
protected:
char name[100] ;
// Constructors - Destructor
// -------------------------
protected:
Eos() ;
explicit Eos(const char* name_i) ;
Eos(const Eos& ) ;
protected:
Eos(FILE* ) ;
Eos(ifstream& ) ;
public:
virtual ~Eos() ;
// Name manipulation
// -----------------
public:
const char* get_name() const ;
void set_name(const char* name_i) ;
// Miscellaneous
// -------------
public:
static Eos* eos_from_file(FILE* ) ;
static Eos* eos_from_file(ifstream& ) ;
virtual bool operator==(const Eos& ) const = 0 ;
virtual bool operator!=(const Eos& ) const = 0 ;
virtual int identify() const = 0 ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
friend ostream& operator<<(ostream& , const Eos& ) ;
protected:
virtual ostream& operator>>(ostream &) const = 0 ;
// Computational functions
// -----------------------
protected:
void calcule(const Cmp& thermo, int nzet, int l_min,
double (Eos::*fait)(double, const Param*) const, const Param* par, Cmp& resu) const ;
void calcule(const Scalar& thermo, int nzet, int l_min,
double (Eos::*fait)(double, const Param*) const, const Param* par, Scalar& resu) const ;
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const = 0 ;
Cmp nbar_ent(const Cmp& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
Scalar nbar_ent(const Scalar& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const = 0 ;
Cmp ener_ent(const Cmp& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
Scalar ener_ent(const Scalar& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const = 0 ;
Cmp press_ent(const Cmp& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
Scalar press_ent(const Scalar& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const = 0 ;
Cmp der_nbar_ent(const Cmp& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
Scalar der_nbar_ent(const Scalar& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const = 0 ;
Cmp der_ener_ent(const Cmp& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
Scalar der_ener_ent(const Scalar& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const = 0 ;
Cmp der_press_ent(const Cmp& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
Scalar der_press_ent(const Scalar& ent, int nzet, int l_min = 0, const Param* par=0x0) const ;
};
ostream& operator<<(ostream& , const Eos& ) ;
//------------------------------------//
// class Eos_poly //
//------------------------------------//
class Eos_poly : public Eos {
// Data :
// -----
protected:
double gam ;
double kap ;
double m_0 ;
double mu_0 ;
double gam1 ;
double unsgam1 ;
double gam1sgamkap ;
double rel_mu_0 ;
double ent_0 ;
// Constructors - Destructor
// -------------------------
public:
Eos_poly(double gamma, double kappa) ;
Eos_poly(double gamma, double kappa, double mass) ;
Eos_poly(double gamma, double kappa, double mass, double mu_zero) ;
Eos_poly(const Eos_poly& ) ;
protected:
Eos_poly(FILE* ) ;
Eos_poly(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_poly() ;
// Assignment
// ----------
void operator=(const Eos_poly& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
double get_gam() const ;
double get_kap() const ;
double get_m_0() const ;
double get_mu_0() const ;
protected:
void set_auxiliary() ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//------------------------------------//
// class Eos_poly_newt //
//------------------------------------//
class Eos_poly_newt : public Eos_poly {
// Data :
// -----
// no new data with respect to Eos_poly
// Constructors - Destructor
// -------------------------
public:
Eos_poly_newt(double gamma, double kappa) ;
Eos_poly_newt(const Eos_poly_newt& ) ;
protected:
Eos_poly_newt(FILE* ) ;
Eos_poly_newt(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_poly_newt() ;
// Assignment
// ----------
void operator=(const Eos_poly_newt& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//------------------------------------//
// class Eos_incomp //
//------------------------------------//
class Eos_incomp : public Eos {
// Data :
// -----
protected:
double rho0 ;
double ent0 ;
// Constructors - Destructor
// -------------------------
public:
Eos_incomp(double rho_c) ;
Eos_incomp(double rho_c, double ent_c) ;
Eos_incomp(const Eos_incomp& ) ;
protected:
Eos_incomp(FILE* ) ;
Eos_incomp(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_incomp() ;
// Assignment
// ----------
void operator=(const Eos_incomp& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//------------------------------------//
// class Eos_incomp_newt //
//------------------------------------//
class Eos_incomp_newt : public Eos_incomp {
// Data :
// -----
// no new data with respect to Eos_incomp
// Constructors - Destructor
// -------------------------
public:
Eos_incomp_newt(double rho_c) ;
Eos_incomp_newt(double rho_c, double ent_c) ;
Eos_incomp_newt(const Eos_incomp_newt& ) ;
protected:
Eos_incomp_newt(FILE* ) ;
Eos_incomp_newt(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_incomp_newt() ;
// Assignment
// ----------
void operator=(const Eos_incomp_newt& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//------------------------------------//
// class Eos_strange //
//------------------------------------//
class Eos_strange : public Eos {
// Data :
// -----
protected:
double n0_b60 ;
double b60 ;
double ent0 ;
double eps_fit ;
double rho0_b60 ;
double n0 ;
double rho0 ;
double b34 ;
double fach ;
// Constructors - Destructor
// -------------------------
public:
Eos_strange(double n0_b60_i, double b60_i, double ent0_i,
double eps_fit_i, double rho0_b60_i) ;
Eos_strange(const Eos_strange& ) ;
protected:
Eos_strange(FILE* ) ;
Eos_strange(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_strange() ;
// Assignment
// ----------
void operator=(const Eos_strange& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
double get_n0_b60() const {return n0_b60;} ;
double get_b60() const {return b60;} ;
double get_ent0() const {return ent0;} ;
double get_eps_fit() const {return eps_fit;} ;
double get_rho0_b60() const {return rho0_b60;} ;
protected:
void set_auxiliary() ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//------------------------------------//
// class Eos_strange_cr //
//------------------------------------//
class Eos_strange_cr : public Eos {
// Data :
// -----
protected:
double n0_b60 ;
double b60 ;
double ent0 ;
double eps_fit ;
double rho0_b60 ;
double ent_nd ;
double rho_nd ;
double gam ;
// Derived data:
// -------------
double n0 ;
double rho0 ;
double b34 ;
double fach ;
double rho_nd_nucl ;
double x_nd ;
double ncr_nd ;
double delent ;
double unsgam1 ;
double gam1sx ;
// Constructors - Destructor
// -------------------------
public:
Eos_strange_cr(double n0_b60_i, double b60_i, double ent0_i,
double eps_fit_i, double rho0_b60_i,
double ent_nd_i, double rho_nd_i,
double gam_i) ;
Eos_strange_cr(const Eos_strange_cr& ) ;
protected:
Eos_strange_cr(FILE* ) ;
Eos_strange_cr(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_strange_cr() ;
// Assignment
// ----------
void operator=(const Eos_strange_cr& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
double get_n0_b60() const {return n0_b60;} ;
double get_b60() const {return b60;} ;
double get_ent0() const {return ent0;} ;
double get_eps_fit() const {return eps_fit;} ;
double get_rho0_b60() const {return rho0_b60;} ;
double get_ent_nd() const {return ent_nd;} ;
double get_rho_nd() const {return rho_nd;} ;
double get_gam() const {return gam;} ;
protected:
void set_auxiliary() ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//----------------------------//
// class Eos_Fermi //
//----------------------------//
class Eos_Fermi : public Eos {
// Data :
// -----
protected:
double m_0 ;
int g_s ;
double n_0 ;
double ener_0 ;
double p_0 ;
// Constructors - Destructor
// -------------------------
public:
Eos_Fermi(double mass) ;
Eos_Fermi(double mass, int g_degen) ;
Eos_Fermi(const Eos_Fermi& ) ;
protected:
Eos_Fermi(FILE* ) ;
Eos_Fermi(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~Eos_Fermi() ;
// Assignment
// ----------
void operator=(const Eos_Fermi& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
double get_m() const ;
int get_g_degen() const ;
protected:
void set_auxiliary() ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
//------------------------------//
// EOS with domain dependency //
//------------------------------//
class MEos : public Eos {
// Data :
// -----
protected:
const Eos** mono_eos ;
int ndom ;
bool constructed_from_file ;
// Constructors - Destructor
// -------------------------
public:
MEos(int ndom_i, const Eos** mono_eos_i) ;
MEos(const Eos& eos1, const Eos& eos2) ;
MEos(const Eos& eos1, const Eos& eos2, const Eos& eos3) ;
MEos(const Eos& eos1, const Eos& eos2, const Eos& eos3, const Eos& eos4) ;
MEos(const MEos& ) ;
protected:
MEos(FILE* ) ;
MEos(ifstream& ) ;
friend Eos* Eos::eos_from_file(FILE* ) ;
friend Eos* Eos::eos_from_file(ifstream& ) ;
public:
virtual ~MEos() ;
// Assignment
// ----------
void operator=(const MEos& ) ;
// Miscellaneous
// -------------
public :
virtual bool operator==(const Eos& ) const ;
virtual bool operator!=(const Eos& ) const ;
virtual int identify() const ;
// Outputs
// -------
public:
virtual void sauve(FILE* ) const ;
protected:
virtual ostream& operator>>(ostream &) const ;
// Computational functions
// -----------------------
public:
virtual double nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double press_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_nbar_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_ener_ent_p(double ent, const Param* par=0x0) const ;
virtual double der_press_ent_p(double ent, const Param* par=0x0) const ;
};
}
//------------------//
// Remaining EOS //
//------------------//
#include "eos_tabul.h"
#include "eos_compose.h"
#include "eos_mag.h"
#endif
Lorene::Cmp
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
Definition cmp.h:446
Lorene::Eos_Fermi::get_m
double get_m() const
Returns the fermion mass in eV/c2.
Definition eos_fermi.C:162
Lorene::Eos_Fermi::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:159
Lorene::Eos_Fermi::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_fermi.C:230
Lorene::Eos_Fermi::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Definition eos_fermi.C:264
Lorene::Eos_Fermi::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_fermi.C:311
Lorene::Eos_Fermi::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
Definition eos_fermi.C:248
Lorene::Eos_Fermi::get_g_degen
int get_g_degen() const
Returns the degeneracy factor.
Definition eos_fermi.C:166
Lorene::Eos_Fermi::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_fermi.C:221
Lorene::Eos_Fermi::ener_0
double ener_0
Energy density scale [unit: ], where ].
Definition eos.h:2112
Lorene::Eos_Fermi::~Eos_Fermi
virtual ~Eos_Fermi()
Destructor.
Definition eos_fermi.C:123
Lorene::Eos_Fermi::operator=
void operator=(const Eos_Fermi &)
Assignment to another Eos_Fermi.
Definition eos_fermi.C:132
Lorene::Eos_Fermi::g_s
int g_s
Degeneracy parameter.
Definition eos.h:2103
Lorene::Eos_Fermi::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_fermi.C:210
Lorene::Eos_Fermi::m_0
double m_0
Individual particule mass [unit: eV/c2].
Definition eos.h:2099
Lorene::Eos_Fermi::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_fermi.C:177
Lorene::Eos_Fermi::p_0
double p_0
Pressure scale [unit: ], where ].
Definition eos.h:2118
Lorene::Eos_Fermi::n_0
double n_0
Number density scale [unit: ].
Definition eos.h:2107
Lorene::Eos_Fermi::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_fermi.C:321
Lorene::Eos_Fermi::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
Definition eos_fermi.C:282
Lorene::Eos_Fermi::Eos_Fermi
Eos_Fermi(double mass)
Standard constructor (sets g_s to 2).
Definition eos_fermi.C:62
Lorene::Eos_Fermi::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_fermi.C:301
Lorene::Eos_Fermi::set_auxiliary
void set_auxiliary()
Computes the auxiliary quantities n_0 , ener_0.
Definition eos_fermi.C:148
Lorene::Eos_incomp_newt::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the specific enthalpy.
Definition eos_incomp_newt.C:235
Lorene::Eos_incomp_newt::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the specific enthalpy.
Definition eos_incomp_newt.C:263
Lorene::Eos_incomp_newt::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the specific enthalpy.
Definition eos_incomp_newt.C:221
Lorene::Eos_incomp_newt::~Eos_incomp_newt
virtual ~Eos_incomp_newt()
Destructor.
Definition eos_incomp_newt.C:128
Lorene::Eos_incomp_newt::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the specific enthalpy.
Definition eos_incomp_newt.C:249
Lorene::Eos_incomp_newt::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:135
Lorene::Eos_incomp_newt::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_incomp_newt.C:150
Lorene::Eos_incomp_newt::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the specific enthalpy.
Definition eos_incomp_newt.C:277
Lorene::Eos_incomp_newt::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the specific enthalpy.
Definition eos_incomp_newt.C:291
Lorene::Eos_incomp_newt::Eos_incomp_newt
Eos_incomp_newt(double rho_c)
Standard constructor.
Definition eos_incomp_newt.C:95
Lorene::Eos_incomp_newt::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_incomp_newt.C:183
Lorene::Eos_incomp_newt::operator=
void operator=(const Eos_incomp_newt &)
Assignment to another Eos_incomp_newt.
Definition eos_incomp_newt.C:137
Lorene::Eos_incomp_newt::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_incomp_newt.C:201
Lorene::Eos_incomp_newt::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_incomp_newt.C:195
Lorene::Eos_incomp::~Eos_incomp
virtual ~Eos_incomp()
Destructor.
Definition eos_incomp.C:145
Lorene::Eos_incomp::Eos_incomp
Eos_incomp(double rho_c)
Standard constructor.
Definition eos_incomp.C:99
Lorene::Eos_incomp::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Definition eos_incomp.C:254
Lorene::Eos_incomp::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_incomp.C:283
Lorene::Eos_incomp::operator=
void operator=(const Eos_incomp &)
Assignment to another Eos_incomp.
Definition eos_incomp.C:154
Lorene::Eos_incomp::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_incomp.C:220
Lorene::Eos_incomp::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_incomp.C:211
Lorene::Eos_incomp::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_incomp.C:199
Lorene::Eos_incomp::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_incomp.C:297
Lorene::Eos_incomp::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
Definition eos_incomp.C:240
Lorene::Eos_incomp::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_incomp.C:167
Lorene::Eos_incomp::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:133
Lorene::Eos_incomp::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_incomp.C:311
Lorene::Eos_incomp::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
Definition eos_incomp.C:268
Lorene::Eos_incomp::ent0
double ent0
Log-enthalpy threshold for setting the energy density to a non zero value (should be negative).
Definition eos.h:1218
Lorene::Eos_incomp::rho0
double rho0
Constant density .
Definition eos.h:1213
Lorene::Eos_poly_newt::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the specific enthalpy.
Definition eos_poly_newt.C:301
Lorene::Eos_poly_newt::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_poly_newt.C:144
Lorene::Eos_poly_newt::operator=
void operator=(const Eos_poly_newt &)
Assignment to another Eos_poly_newt.
Definition eos_poly_newt.C:129
Lorene::Eos_poly_newt::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the specific enthalpy.
Definition eos_poly_newt.C:233
Lorene::Eos_poly_newt::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the specific enthalpy.
Definition eos_poly_newt.C:251
Lorene::Eos_poly_newt::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the specific enthalpy.
Definition eos_poly_newt.C:277
Lorene::Eos_poly_newt::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:131
Lorene::Eos_poly_newt::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_poly_newt.C:194
Lorene::Eos_poly_newt::~Eos_poly_newt
virtual ~Eos_poly_newt()
Destructor.
Definition eos_poly_newt.C:120
Lorene::Eos_poly_newt::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_poly_newt.C:183
Lorene::Eos_poly_newt::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the specific enthalpy.
Definition eos_poly_newt.C:268
Lorene::Eos_poly_newt::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_poly_newt.C:200
Lorene::Eos_poly_newt::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the specific enthalpy.
Definition eos_poly_newt.C:219
Lorene::Eos_poly_newt::Eos_poly_newt
Eos_poly_newt(double gamma, double kappa)
Standard constructor.
Definition eos_poly_newt.C:94
Lorene::Eos_poly::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:129
Lorene::Eos_poly::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_poly.C:469
Lorene::Eos_poly::ent_0
double ent_0
Enthalpy at zero pressure ( ).
Definition eos.h:790
Lorene::Eos_poly::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_poly.C:438
Lorene::Eos_poly::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Definition eos_poly.C:382
Lorene::Eos_poly::kap
double kap
Pressure coefficient (cf.
Definition eos.h:771
Lorene::Eos_poly::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_poly.C:335
Lorene::Eos_poly::Eos_poly
Eos_poly(double gamma, double kappa)
Standard constructor (sets both m_0 and mu_0 to 1).
Definition eos_poly.C:126
Lorene::Eos_poly::get_mu_0
double get_mu_0() const
Return the relativistic chemical potential at zero pressure [unit: , with ].
Definition eos_poly.C:268
Lorene::Eos_poly::get_gam
double get_gam() const
Returns the adiabatic index (cf. Eq. (3)).
Definition eos_poly.C:256
Lorene::Eos_poly::gam1sgamkap
double gam1sgamkap
Definition eos.h:788
Lorene::Eos_poly::unsgam1
double unsgam1
Definition eos.h:787
Lorene::Eos_poly::gam
double gam
Adiabatic index (cf. Eq. (3)).
Definition eos.h:764
Lorene::Eos_poly::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
Definition eos_poly.C:368
Lorene::Eos_poly::operator=
void operator=(const Eos_poly &)
Assignment to another Eos_poly.
Definition eos_poly.C:224
Lorene::Eos_poly::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
Definition eos_poly.C:400
Lorene::Eos_poly::m_0
double m_0
Individual particule mass (cf.
Definition eos.h:776
Lorene::Eos_poly::mu_0
double mu_0
Relativistic chemical potential at zero pressure [unit: , with ].
Definition eos.h:782
Lorene::Eos_poly::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_poly.C:418
Lorene::Eos_poly::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_poly.C:324
Lorene::Eos_poly::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_poly.C:278
Lorene::Eos_poly::~Eos_poly
virtual ~Eos_poly()
Destructor.
Definition eos_poly.C:215
Lorene::Eos_poly::get_m_0
double get_m_0() const
Return the individual particule mass (cf.
Definition eos_poly.C:264
Lorene::Eos_poly::get_kap
double get_kap() const
Returns the pressure coefficient (cf.
Definition eos_poly.C:260
Lorene::Eos_poly::rel_mu_0
double rel_mu_0
Definition eos.h:789
Lorene::Eos_poly::gam1
double gam1
Definition eos.h:786
Lorene::Eos_poly::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_poly.C:347
Lorene::Eos_poly::set_auxiliary
void set_auxiliary()
Computes the auxiliary quantities gam1 , unsgam1 , gam1sgamkap from the values of gam and kap.
Definition eos_poly.C:242
Lorene::Eos_strange_cr::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:139
Lorene::Eos_strange_cr::delent
double delent
Enthalpy shift in quark phase.
Definition eos.h:1867
Lorene::Eos_strange_cr::b34
double b34
Definition eos.h:1844
Lorene::Eos_strange_cr::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_strange_cr.C:523
Lorene::Eos_strange_cr::rho0
double rho0
Energy density at zero pressure.
Definition eos.h:1839
Lorene::Eos_strange_cr::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_strange_cr.C:551
Lorene::Eos_strange_cr::get_rho0_b60
double get_rho0_b60() const
Returns the energy density at zero pressure divided by .
Definition eos.h:1975
Lorene::Eos_strange_cr::rho_nd_nucl
double rho_nd_nucl
Energy density at neutron drip point, defining the boundary between crust and core [unit: rho_unit ].
Definition eos.h:1856
Lorene::Eos_strange_cr::~Eos_strange_cr
virtual ~Eos_strange_cr()
Destructor.
Definition eos_strange_cr.C:177
Lorene::Eos_strange_cr::rho_nd
double rho_nd
Energy density at neutron drip point, defining the boundary between crust and core [unit: ].
Definition eos.h:1820
Lorene::Eos_strange_cr::rho0_b60
double rho0_b60
Energy density at zero pressure divided by .
Definition eos.h:1807
Lorene::Eos_strange_cr::get_ent0
double get_ent0() const
Returns the log-enthalpy threshold for setting the energy density to a non zero value (should be nega...
Definition eos.h:1964
Lorene::Eos_strange_cr::ent0
double ent0
Log-enthalpy threshold for setting the energy density to a non zero value (should be negative).
Definition eos.h:1796
Lorene::Eos_strange_cr::gam1sx
double gam1sx
Definition eos.h:1873
Lorene::Eos_strange_cr::ent_nd
double ent_nd
Log-enthalpy at neutron drip point, defining the boundary between crust and core.
Definition eos.h:1813
Lorene::Eos_strange_cr::get_eps_fit
double get_eps_fit() const
Returns the fitting parameter related to the square of sound velocity by .
Definition eos.h:1970
Lorene::Eos_strange_cr::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Definition eos_strange_cr.C:437
Lorene::Eos_strange_cr::get_gam
double get_gam() const
Returns the adiabatic index for the crust model.
Definition eos.h:1991
Lorene::Eos_strange_cr::n0_b60
double n0_b60
Baryon density at zero pressure divided by .
Definition eos.h:1788
Lorene::Eos_strange_cr::b60
double b60
Bag constant [unit: ].
Definition eos.h:1791
Lorene::Eos_strange_cr::Eos_strange_cr
Eos_strange_cr(double n0_b60_i, double b60_i, double ent0_i, double eps_fit_i, double rho0_b60_i, double ent_nd_i, double rho_nd_i, double gam_i)
Standard constructor.
Definition eos_strange_cr.C:100
Lorene::Eos_strange_cr::ncr_nd
double ncr_nd
Rescaled number density at neutron drip point.
Definition eos.h:1864
Lorene::Eos_strange_cr::x_nd
double x_nd
Ratio of pressure to energy density at neutron drip point.
Definition eos.h:1861
Lorene::Eos_strange_cr::get_ent_nd
double get_ent_nd() const
Returns the log-enthalpy at neutron drip point, defining the boundary between crust and core.
Definition eos.h:1980
Lorene::Eos_strange_cr::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_strange_cr.C:378
Lorene::Eos_strange_cr::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_strange_cr.C:497
Lorene::Eos_strange_cr::unsgam1
double unsgam1
Definition eos.h:1870
Lorene::Eos_strange_cr::get_n0_b60
double get_n0_b60() const
Returns the baryon density at zero pressure divided by [unit: ].
Definition eos.h:1956
Lorene::Eos_strange_cr::operator=
void operator=(const Eos_strange_cr &)
Assignment to another Eos_strange.
Definition eos_strange_cr.C:187
Lorene::Eos_strange_cr::set_auxiliary
void set_auxiliary()
Computes the auxiliary quantities n0 , rh0 , b34 and fach from the values of the other parameters.
Definition eos_strange_cr.C:209
Lorene::Eos_strange_cr::get_rho_nd
double get_rho_nd() const
Returns the energy density at neutron drip point, defining the boundary between crust and core [unit:...
Definition eos.h:1987
Lorene::Eos_strange_cr::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_strange_cr.C:272
Lorene::Eos_strange_cr::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_strange_cr.C:363
Lorene::Eos_strange_cr::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
Definition eos_strange_cr.C:410
Lorene::Eos_strange_cr::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_strange_cr.C:353
Lorene::Eos_strange_cr::eps_fit
double eps_fit
Fitting parameter related to the square of sound velocity by .
Definition eos.h:1802
Lorene::Eos_strange_cr::get_b60
double get_b60() const
Returns the bag constant [unit: ].
Definition eos.h:1959
Lorene::Eos_strange_cr::n0
double n0
Baryon density at zero pressure.
Definition eos.h:1833
Lorene::Eos_strange_cr::fach
double fach
Factor .
Definition eos.h:1849
Lorene::Eos_strange_cr::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
Definition eos_strange_cr.C:468
Lorene::Eos_strange_cr::gam
double gam
Adiabatic index for the crust model.
Definition eos.h:1825
Lorene::Eos_strange::get_ent0
double get_ent0() const
Returns the log-enthalpy threshold for setting the energy density to a non zero value (should be nega...
Definition eos.h:1671
Lorene::Eos_strange::rho0
double rho0
Energy density at zero pressure.
Definition eos.h:1579
Lorene::Eos_strange::get_b60
double get_b60() const
Returns the bag constant [unit: ].
Definition eos.h:1666
Lorene::Eos_strange::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition eos_strange.C:265
Lorene::Eos_strange::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
Definition eos_strange.C:347
Lorene::Eos_strange::eps_fit
double eps_fit
Fitting parameter related to the square of sound velocity by .
Definition eos.h:1563
Lorene::Eos_strange::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Definition eos_strange.C:329
Lorene::Eos_strange::n0
double n0
Baryon density at zero pressure.
Definition eos.h:1573
Lorene::Eos_strange::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos_strange.C:275
Lorene::Eos_strange::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_strange.C:397
Lorene::Eos_strange::fach
double fach
Factor .
Definition eos.h:1589
Lorene::Eos_strange::Eos_strange
Eos_strange(double n0_b60_i, double b60_i, double ent0_i, double eps_fit_i, double rho0_b60_i)
Standard constructor.
Definition eos_strange.C:98
Lorene::Eos_strange::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition eos_strange.C:211
Lorene::Eos_strange::set_auxiliary
void set_auxiliary()
Computes the auxiliary quantities n0 , rh0 , b34 and fach from the values of the other parameters.
Definition eos_strange.C:191
Lorene::Eos_strange::b60
double b60
Bag constant [unit: ].
Definition eos.h:1552
Lorene::Eos_strange::get_eps_fit
double get_eps_fit() const
Returns the fitting parameter related to the square of sound velocity by .
Definition eos.h:1677
Lorene::Eos_strange::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_strange.C:379
Lorene::Eos_strange::ent0
double ent0
Log-enthalpy threshold for setting the energy density to a non zero value (should be negative).
Definition eos.h:1557
Lorene::Eos_strange::~Eos_strange
virtual ~Eos_strange()
Destructor.
Definition eos_strange.C:162
Lorene::Eos_strange::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition eos_strange.C:364
Lorene::Eos_strange::get_rho0_b60
double get_rho0_b60() const
Returns the energy density at zero pressure divided by .
Definition eos.h:1682
Lorene::Eos_strange::rho0_b60
double rho0_b60
Energy density at zero pressure divided by .
Definition eos.h:1568
Lorene::Eos_strange::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:137
Lorene::Eos_strange::b34
double b34
Definition eos.h:1584
Lorene::Eos_strange::get_n0_b60
double get_n0_b60() const
Returns the baryon density at zero pressure divided by [unit: ].
Definition eos.h:1663
Lorene::Eos_strange::operator=
void operator=(const Eos_strange &)
Assignment to another Eos_strange.
Definition eos_strange.C:172
Lorene::Eos_strange::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition eos_strange.C:287
Lorene::Eos_strange::n0_b60
double n0_b60
Baryon density at zero pressure divided by .
Definition eos.h:1549
Lorene::Eos_strange::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
Definition eos_strange.C:314
Lorene::Eos
Equation of state base class.
Definition eos.h:190
Lorene::Eos::der_press_ent
Cmp der_press_ent(const Cmp &ent, int nzet, int l_min=0, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy and extra parameters.
Definition eos.C:452
Lorene::Eos::identify
virtual int identify() const =0
Returns a number to identify the sub-classe of Eos the object belongs to.
Lorene::Eos::nbar_ent
Cmp nbar_ent(const Cmp &ent, int nzet, int l_min=0, const Param *par=0x0) const
Computes the baryon density field from the log-enthalpy field and extra parameters.
Definition eos.C:338
Lorene::Eos::eos_from_file
static Eos * eos_from_file(FILE *)
Construction of an EOS from a binary file.
Definition eos_from_file.C:177
Lorene::Eos::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const =0
Computes the pressure from the log-enthalpy and extra parameters (virtual function implemented in the...
Lorene::Eos::operator<<
friend ostream & operator<<(ostream &, const Eos &)
Display.
Definition eos.C:191
Lorene::Eos::ener_ent
Cmp ener_ent(const Cmp &ent, int nzet, int l_min=0, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy and extra parameters.
Definition eos.C:363
Lorene::Eos::calcule
void calcule(const Cmp &thermo, int nzet, int l_min, double(Eos::*fait)(double, const Param *) const, const Param *par, Cmp &resu) const
General computational method for Cmp 's.
Definition eos.C:203
Lorene::Eos::operator==
virtual bool operator==(const Eos &) const =0
Comparison operator (egality).
Lorene::Eos::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const =0
Computes the logarithmic derivative from the log-enthalpy and extra parameters (virtual function imp...
Lorene::Eos::~Eos
virtual ~Eos()
Destructor.
Definition eos.C:152
Lorene::Eos::der_ener_ent
Cmp der_ener_ent(const Cmp &ent, int nzet, int l_min=0, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy and extra parameters.
Definition eos.C:430
Lorene::Eos::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition eos.C:179
Lorene::Eos::get_name
const char * get_name() const
Returns the EOS name.
Definition eos.C:169
Lorene::Eos::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const =0
Computes the logarithmic derivative from the log-enthalpy with extra parameters (virtual function im...
Lorene::Eos::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const =0
Computes the logarithmic derivative from the log-enthalpy and extra parameters (virtual function imp...
Lorene::Eos::press_ent
Cmp press_ent(const Cmp &ent, int nzet, int l_min=0, const Param *par=0x0) const
Computes the pressure from the log-enthalpy and extra parameters.
Definition eos.C:385
Lorene::Eos::operator>>
virtual ostream & operator>>(ostream &) const =0
Operator >>.
Lorene::Eos::Eos
Eos()
Standard constructor.
Definition eos.C:108
Lorene::Eos::operator!=
virtual bool operator!=(const Eos &) const =0
Comparison operator (difference).
Lorene::Eos::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const =0
Computes the total energy density from the log-enthalpy and extra parameters (virtual function implem...
Lorene::Eos::name
char name[100]
EOS name.
Definition eos.h:196
Lorene::Eos::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const =0
Computes the baryon density from the log-enthalpy and extra parameters (virtual function implemented ...
Lorene::Eos::set_name
void set_name(const char *name_i)
Sets the EOS name.
Definition eos.C:163
Lorene::Eos::der_nbar_ent
Cmp der_nbar_ent(const Cmp &ent, int nzet, int l_min=0, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy and extra parameters.
Definition eos.C:407
Lorene::MEos::identify
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
Definition eos_from_file.C:163
Lorene::MEos::operator>>
virtual ostream & operator>>(ostream &) const
Operator >>.
Definition meos.C:202
Lorene::MEos::~MEos
virtual ~MEos()
Destructor.
Definition meos.C:162
Lorene::MEos::operator=
void operator=(const MEos &)
Assignment to another MEos.
Definition meos.C:178
Lorene::MEos::ener_ent_p
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Definition meos.C:275
Lorene::MEos::MEos
MEos(int ndom_i, const Eos **mono_eos_i)
Standard constructor.
Definition meos.C:72
Lorene::MEos::nbar_ent_p
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
Definition meos.C:264
Lorene::MEos::der_press_ent_p
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition meos.C:315
Lorene::MEos::sauve
virtual void sauve(FILE *) const
Save in a file.
Definition meos.C:190
Lorene::MEos::der_ener_ent_p
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition meos.C:305
Lorene::MEos::der_nbar_ent_p
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Definition meos.C:295
Lorene::MEos::operator==
virtual bool operator==(const Eos &) const
Comparison operator (egality).
Definition meos.C:222
Lorene::MEos::press_ent_p
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
Definition meos.C:285
Lorene::MEos::constructed_from_file
bool constructed_from_file
Indicates wether the EOS has been constructed from a file.
Definition eos.h:2292
Lorene::MEos::mono_eos
const Eos ** mono_eos
Array (upon the domains) containing the various EOS.
Definition eos.h:2286
Lorene::MEos::ndom
int ndom
Number of domains.
Definition eos.h:2289
Lorene::MEos::operator!=
virtual bool operator!=(const Eos &) const
Comparison operator (difference).
Definition meos.C:250
Lorene::Param
Parameter storage.
Definition param.h:125
Lorene::Scalar
Tensor field of valence 0 (or component of a tensorial field).
Definition scalar.h:387
Lorene::Tbl
Basic array class.
Definition tbl.h:161
Lorene
Lorene prototypes.
Definition app_hor.h:64