Nambu Jona-Lasinio EOS at zero temperature. More...
#include <eos_quark_njl.h>
Calculates everything from the quark condensates ([uds].qq) and the chemical potentials ([uds].mu). If "fromqq" is set to false, then instead it calculates everything from the dynamical masses ([uds].ms) and the chemical potentials. L, G, K, and B0 are fixed constants. [uds].pr returns the pressure due to the Fermi-gas contribution plus the bag pressure contribution. [uds.ed] is the energy density for each quark so that e.g. u.ed+u.pr=u.mu*u.n. B0 should be fixed using calc_B0() beforehand to ensure that the energy density and pressure of the vacuum is zero.
The functions set_parameters() should be called first.
The code is based on Buballa99.
The Lagrangian is
And the corresponding thermodynamic potential is
where is the Fermi gas contribution and
where is a constant defined to ensure that the energy density and the pressure of the vacuum is zero.
Unlike Buballa99, the bag constant, is defined without the term
since this allows an easier comparison to the finite temperature EOS. The constant in this case is therefore significantly larger, but the energy density and pressure are still zero in the vacuum.
The Feynman-Hellman theorem (Bernard88 ), gives
The functions calc_e() and calc_p() never return a value other than zero, but will give nonsensical results for nonsensical inputs.
Finite T documentation
Calculates everything from the quark condensates ([uds].qq) and the chemical potentials ([uds].mu). If "fromqq" is set to false, then instead it calculates everything from the dynamical masses ([uds].ms) and the chemical potentials. L, G, K, and B0 are fixed constants. [uds].pr returns the pressure due to the Fermi-gas contribution plus the bag pressure contribution. [uds.ed] is the energy density for each quark so that e.g. u.ed+u.pr=u.mu*u.n. B0 is fixed to ensure that the energy density and pressure of the vacuum is zero.
This implementation includes contributions from antiquarks.
Created for Steiner00. See also Buballa99 and Hatsuda94.
Definition at line 131 of file eos_quark_njl.h.
Classes | |
struct | njtp_s |
A structure for passing parameters to the integrands. More... | |
Public Types | |
typedef boost::numeric::ublas::vector< double > | ubvector |
typedef struct o2scl::eos_quark_njl::njtp_s | njtp |
A structure for passing parameters to the integrands. | |
Public Member Functions | |
virtual int | set_parameters (double lambda=0.0, double fourferm=0.0, double sixferm=0.0) |
Set the parameters and the bag constant B0 . More... | |
virtual int | calc_p (quark &u, quark &d, quark &s, thermo <h) |
Equation of state as a function of chemical potentials. More... | |
virtual int | calc_temp_p (quark &u, quark &d, quark &s, double T, thermo &th) |
Equation of state as a function of chemical potentials at finite temperature. More... | |
virtual int | calc_eq_p (quark &u, quark &d, quark &s, double &gap1, double &gap2, double &gap3, thermo <h) |
Equation of state and gap equations as a function of chemical potential. | |
virtual int | calc_eq_e (quark &u, quark &d, quark &s, double &gap1, double &gap2, double &gap3, thermo <h) |
Equation of state and gap equations as a function of the densities. | |
int | calc_eq_temp_p (quark &tu, quark &td, quark &ts, double &gap1, double &gap2, double &gap3, thermo &qb, double temper) |
Equation of state and gap equations as a function of chemical potentials. | |
int | gapfunms (size_t nv, const ubvector &x, ubvector &y) |
Calculates gap equations in y as a function of the constituent masses in x . More... | |
int | gapfunqq (size_t nv, const ubvector &x, ubvector &y) |
Calculates gap equations in y as a function of the quark condensates in x . More... | |
int | gapfunmsT (size_t nv, const ubvector &x, ubvector &y) |
Calculates gap equations in y as a function of the constituent masses in x . More... | |
int | gapfunqqT (size_t nv, const ubvector &x, ubvector &y) |
Calculates gap equations in y as a function of the quark condensates in x . More... | |
int | set_quarks (quark &u, quark &d, quark &s) |
Set the quark objects to use. More... | |
virtual const char * | type () |
Return string denoting type ("eos_quark_njl") | |
virtual int | set_solver (mroot< mm_funct, boost::numeric::ublas::vector< double >, jac_funct > &s) |
Set solver to use in set_parameters() | |
virtual int | set_inte (inte<> &i) |
Set integration object. | |
![]() | |
virtual int | calc_e (quark &u, quark &d, quark &s, thermo &th) |
Calculate equation of state as a function of density. | |
virtual int | calc_temp_e (quark &u, quark &d, quark &s, double temper, thermo &th) |
Calculate equation of state as a function of density. | |
![]() | |
virtual void | set_thermo (thermo &th) |
Set class thermo object. | |
virtual const thermo & | get_thermo () |
Get class thermo object. | |
Public Attributes | |
double | limit |
Accuracy limit for Fermi integrals for finite temperature. More... | |
bool | fromqq |
Calculate from quark condensates if true (default true) More... | |
double | L |
The momentum cutoff. | |
double | G |
The four-fermion coupling. | |
double | K |
The 't Hooft six-fermion interaction coupling. | |
double | B0 |
The bag constant. | |
mroot_hybrids< mm_funct, boost::numeric::ublas::vector< double >, boost::numeric::ublas::matrix< double >, jac_funct > | def_solver |
The default solver. | |
inte_qag_gsl | def_it |
The default integrator. | |
The default quark masses | |
These are the values from Buballa99 which were used to fix the pion and kaon decay constants, and the pion, kaon, and eta prime masses. They are set in the constructor and are in units of | |
double | up_default_mass |
double | down_default_mass |
double | strange_default_mass |
The default quark objects | |
The masses are automatically set in the constructor to | |
quark | def_up |
quark | def_down |
quark | def_strange |
![]() | |
fermion_eval_thermo * | fet |
Object for computing fermion thermodynamics. | |
fermion_eff | def_fet |
Default fermion thermodynamics. | |
![]() | |
thermo | def_thermo |
The default thermo object. | |
Protected Member Functions | |
int | B0fun (size_t nv, const ubvector &x, ubvector &y) |
Used by calc_B0() to compute the bag constant. | |
void | njbag (quark &q) |
Calculates the contribution to the bag constant from quark q . | |
double | iqq (double x, const njtp &pa) |
The integrand for the quark condensate. | |
double | ide (double x, const njtp &pa) |
The integrand for the density. | |
double | ied (double x, const njtp &pa) |
The integrand for the energy density. | |
double | ipr (double x, const njtp &pa) |
The integrand for the pressure. | |
Protected Attributes | |
inte * | it |
The integrator for finite temperature integrals. | |
mroot< mm_funct, boost::numeric::ublas::vector< double >, jac_funct > * | solver |
The solver to use for set_parameters() | |
quark * | up |
The up quark. | |
quark * | down |
The down quark. | |
quark * | strange |
The strange quark. | |
double | cp_temp |
The temperature for calc_temp_p() | |
![]() | |
thermo * | eos_thermo |
A pointer to the thermo object. | |
This function automatically solves the gap equations
Reimplemented from o2scl::eos_quark.
|
virtual |
This function automatically solves the gap equations
Reimplemented from o2scl::eos_quark.
The function utilizes the quark objects which can be specified in set_quarks() and the thermo object which can be specified in eos::set_thermo().
The function utilizes the quark objects which can be specified in set_quarks() and the thermo object which can be specified in eos::set_thermo().
The function utilizes the quark objects which can be specified in set_quarks() and the thermo object which can be specified in eos::set_thermo().
The function utilizes the quark objects which can be specified in set_quarks() and the thermo object which can be specified in eos::set_thermo().
|
virtual |
This function allows the user to specify the momentum cutoff, lambda
, the four-fermion coupling fourferm
and the six-fermion coupling from the 't Hooft interaction sixferm
. If 0.0 is given for any of the values, then the default is used ( ).
The value of the shift in the bag constant B0
is automatically calculated to ensure that the energy density and the pressure of the vacuum are zero. The functions set_quarks() and set_thermo() can be used before hand to specify the quark and thermo objects.
The quark objects are used in gapfunms(), gapfunqq(), gapfunmsT(), gapfunqqT(), and B0fun().
bool o2scl::eos_quark_njl::fromqq |
If this is false, then computations are performed using the effective masses as inputs
Definition at line 168 of file eos_quark_njl.h.
double o2scl::eos_quark_njl::limit |
limit is used for the finite temperature integrals to ensure that no numbers larger than exp(limit) or smaller than exp(-limit) are avoided. (Default: 20)
Definition at line 161 of file eos_quark_njl.h.
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).