Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | List of all members
o2scl::eos_quark_cfl6 Class Reference

An EOS like eos_quark_cfl but with a color-superconducting 't Hooft interaction. More...

#include <eos_quark_cfl6.h>

Inheritance diagram for o2scl::eos_quark_cfl6:
o2scl::eos_quark_cfl o2scl::eos_quark_njl o2scl::eos_quark o2scl::eos_base

Public Types

typedef boost::numeric::ublas::vector< std::complex< double > > ubvector_complex
 
typedef boost::numeric::ublas::matrix< std::complex< double > > ubmatrix_complex
 
- Public Types inherited from o2scl::eos_quark_njl
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 calc_eq_temp_p (quark &u, quark &d, quark &s, double &qq1, double &qq2, double &qq3, double &gap1, double &gap2, double &gap3, double mu3, double mu8, double &n3, double &n8, thermo &qb, double temper)
 Calculate the EOS. More...
 
virtual int integrands (double p, double res[])
 The momentum integrands.
 
virtual int test_derivatives (double lmom, double mu3, double mu8, test_mgr &t)
 Check the derivatives specified by eigenvalues()
 
virtual int eigenvalues6 (double lmom, double mu3, double mu8, double egv[36], double dedmuu[36], double dedmud[36], double dedmus[36], double dedmu[36], double dedmd[36], double dedms[36], double dedu[36], double dedd[36], double deds[36], double dedmu3[36], double dedmu8[36])
 Calculate the energy eigenvalues and their derivatives. More...
 
virtual int make_matrices (double lmom, double mu3, double mu8, double egv[36], double dedmuu[36], double dedmud[36], double dedmus[36], double dedmu[36], double dedmd[36], double dedms[36], double dedu[36], double dedd[36], double deds[36], double dedmu3[36], double dedmu8[36])
 Construct the matrices, but don't solve the eigenvalue problem. More...
 
virtual const char * type ()
 Return string denoting type ("eos_quark_cfl6")
 
- Public Member Functions inherited from o2scl::eos_quark_cfl
virtual int set_parameters (double lambda=0.0, double fourferm=0.0, double sixferm=0.0, double fourgap=0.0)
 Set the parameters and the bag constant 'B0'. More...
 
virtual int eigenvalues (double lmom, double mu3, double mu8, double egv[36], double dedmuu[36], double dedmud[36], double dedmus[36], double dedmu[36], double dedmd[36], double dedms[36], double dedu[36], double dedd[36], double deds[36], double dedmu3[36], double dedmu8[36])
 Calculate the energy eigenvalues as a function of the momentum. More...
 
int set_quartic (quartic_real_coeff &q)
 Set the routine for solving quartics.
 
int test_integration (test_mgr &t)
 Test the integration routines.
 
int test_normal_eigenvalues (test_mgr &t)
 Test the routine to compute the eigenvalues of non-superfluid fermions.
 
int test_gapped_eigenvalues (test_mgr &t)
 Test the routine to compute the eigenvalues of superfluid fermions.
 
- Public Member Functions inherited from o2scl::eos_quark_njl
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 &lth)
 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 &lth)
 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 &lth)
 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 int set_solver (mroot< mm_funct11, boost::numeric::ublas::vector< double >, jac_funct11 > &s)
 Set solver to use in set_parameters()
 
virtual int set_inte (inte<> &i)
 Set integration object.
 
- Public Member Functions inherited from o2scl::eos_quark
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.
 
- Public Member Functions inherited from o2scl::eos_base
virtual void set_thermo (thermo &th)
 Set class thermo object.
 
virtual const thermoget_thermo ()
 Get class thermo object.
 

Public Attributes

double KD
 The color superconducting 't Hooft coupling (default 0)
 
double kdlimit
 The absolute value below which the CSC 't Hooft coupling is ignored(default $ 10^{-6} $)
 
- Public Attributes inherited from o2scl::eos_quark_cfl
double eq_limit
 The equal mass threshold.
 
bool integ_test
 Set to true to test the integration (default false)
 
quartic_real_coeff_cern def_quartic
 The default quartic routine. More...
 
double gap_limit
 Smallest allowable gap (default 0.0) More...
 
bool zerot
 If this is true, then finite temperature corrections are ignored (default false) More...
 
bool fixed_mass
 Use a fixed quark mass and ignore the quark condensates.
 
bool color_neut
 If true, then ensure color neutrality.
 
double GD
 Diquark coupling constant (default 3 G/4) More...
 
double inte_epsabs
 The absolute precision for the integration (default $ 10^{-4} $ ) More...
 
double inte_epsrel
 The relative precision for the integration (default $ 10^{-4} $ ) More...
 
size_t inte_npoints
 The number of points used in the last integration (default 0) More...
 
- Public Attributes inherited from o2scl::eos_quark_njl
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_funct11, boost::numeric::ublas::vector< double >, boost::numeric::ublas::matrix< double >, jac_funct11def_solver
 The default solver.
 
inte_qag_gsl def_it
 The default integrator.
 
double up_default_mass
 
double down_default_mass
 
double strange_default_mass
 
quark def_up
 
quark def_down
 
quark def_strange
 
- Public Attributes inherited from o2scl::eos_quark
fermion_eval_thermofet
 Object for computing fermion thermodynamics.
 
fermion_eff def_fet
 Default fermion thermodynamics.
 
- Public Attributes inherited from o2scl::eos_base
thermo def_thermo
 The default thermo object.
 

Protected Member Functions

int set_masses ()
 Set the quark effective masses from the gaps and the condensates.
 
- Protected Member Functions inherited from o2scl::eos_quark_cfl
int normal_eigenvalues (double m, double lmom, double mu, double lam[2], double dldmu[2], double dldm[2])
 Compute ungapped eigenvalues and the appropriate derivatives.
 
int gapped_eigenvalues (double m1, double m2, double lmom, double mu1, double mu2, double tdelta, double lam[4], double dldmu1[4], double dldmu2[4], double dldm1[4], double dldm2[4], double dldg[4])
 Treat the simply gapped quarks in all cases gracefully. More...
 
double rescale_error (double err, double result_abs, double result_asc)
 The error scaling function for integ_err.
 
int integ_err (double a, double b, const size_t nr, ubvector &res, double &err2)
 A new version of inte_qng_gsl to integrate several functions at the same time.
 
- Protected Member Functions inherited from o2scl::eos_quark_njl
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

gsl_matrix_complex * iprop6
 Storage for the inverse propagator.
 
gsl_matrix_complex * eivec6
 The eigenvectors.
 
ubmatrix_complex dipdgapu
 The derivative wrt the ds gap.
 
ubmatrix_complex dipdgapd
 The derivative wrt the us gap.
 
ubmatrix_complex dipdgaps
 The derivative wrt the ud gap.
 
ubmatrix_complex dipdqqu
 The derivative wrt the up quark condensate.
 
ubmatrix_complex dipdqqd
 The derivative wrt the down quark condensate.
 
ubmatrix_complex dipdqqs
 The derivative wrt the strange quark condensate.
 
gsl_vector * eval6
 Storage for the eigenvalues.
 
gsl_eigen_hermv_workspace * w6
 GSL workspace for the eigenvalue computation.
 
- Protected Attributes inherited from o2scl::eos_quark_cfl
double temper
 Temperature.
 
double smu3
 3rd gluon chemical potential
 
double smu8
 8th gluon chemical potential
 
gsl_matrix_complex * iprop
 Inverse propagator matrix.
 
gsl_matrix_complex * eivec
 The eigenvectors.
 
ubmatrix_complex dipdgapu
 The derivative of the inverse propagator wrt the ds gap.
 
ubmatrix_complex dipdgapd
 The derivative of the inverse propagator wrt the us gap.
 
ubmatrix_complex dipdgaps
 The derivative of the inverse propagator wrt the ud gap.
 
gsl_vector * eval
 The eigenvalues.
 
gsl_eigen_hermv_workspace * w
 Workspace for eigenvalue computation.
 
quartic_real_coeffquartic
 The routine to solve quartics.
 
- Protected Attributes inherited from o2scl::eos_quark_njl
inteit
 The integrator for finite temperature integrals.
 
mroot< mm_funct11, boost::numeric::ublas::vector< double >, jac_funct11 > * solver
 The solver to use for set_parameters()
 
quarkup
 The up quark.
 
quarkdown
 The down quark.
 
quarkstrange
 The strange quark.
 
double cp_temp
 The temperature for calc_temp_p()
 
- Protected Attributes inherited from o2scl::eos_base
thermoeos_thermo
 A pointer to the thermo object.
 

Static Protected Attributes

static const int mat_size =36
 The size of the matrix to be diagonalized.
 

Private Member Functions

 eos_quark_cfl6 (const eos_quark_cfl6 &)
 
eos_quark_cfl6operator= (const eos_quark_cfl6 &)
 

Additional Inherited Members

- Protected Types inherited from o2scl::eos_quark_cfl
typedef boost::numeric::ublas::vector< double > ubvector
 
typedef boost::numeric::ublas::vector< std::complex< double > > ubvector_complex
 
typedef boost::numeric::ublas::matrix< std::complex< double > > ubmatrix_complex
 

Detailed Description

Beginning with the Lagrangian:

\[ {\cal L} = {\cal L}_{Dirac} + {\cal L}_{NJL} + {\cal L}_{'t Hooft} + {\cal L}_{SC} + {\cal L}_{SC6} \]

\[ {\cal L}_{Dirac} = {\bar q} \left( i \partial -m - \mu \gamma^0 \right) q \]

\[ {\cal L}_{NJL} = G_S \sum_{a=0}^8 \left[ \left( {\bar q} \lambda^a q \right)^2 - \left( {\bar q} \lambda^a \gamma^5 q \right)^2 \right] \]

\[ {\cal L}_{'t Hooft} = G_D \left[ \mathrm{det}_f {\bar q} \left(1-\gamma^5 \right) q +\mathrm{det}_f {\bar q} \left(1+\gamma^5 \right) q \right] \]

\[ {\cal L}_{SC} = G_{DIQ} \left( {\bar q}_{i \alpha} i \gamma^5 \varepsilon^{i j k} \varepsilon^{\alpha \beta \gamma} q^C_{j \beta} \right) \left( {\bar q}_{\ell \delta} i \gamma^5 \epsilon^{\ell m k} \epsilon^{\delta \varepsilon \gamma} q^C_{m \varepsilon} \right) \]

\[ {\cal L}_{SC6} = K_D \left( {\bar q}_{i \alpha} i \gamma^5 \varepsilon^{i j k} \varepsilon^{\alpha \beta \gamma} q^C_{j \beta} \right) \left( {\bar q}_{\ell \delta} i \gamma^5 \epsilon^{\ell m n} \epsilon^{\delta \varepsilon \eta} q^C_{m \varepsilon} \right) \left( {\bar q}_{k \gamma} q_{n \eta} \right) \]

We can simplify the relevant terms in ${\cal L}_{NJL}$:

\[ {\cal L}_{NJL} = G_S \left[ \left({\bar u} u\right)^2+ \left({\bar d} d\right)^2+ \left({\bar s} s\right)^2 \right] \]

and in ${\cal L}_{'t Hooft}$:

\[ {\cal L}_{NJL} = G_D \left( {\bar u} u {\bar d} d {\bar s} s \right) \]

Using the definition:

\[ \Delta^{k \gamma} = \left< {\bar q} i \gamma^5 \epsilon \epsilon q^C_{} \right> \]

and the ansatzes:

\[ ({\bar q}_1 q_2) ({\bar q}_3 q_4) \rightarrow {\bar q}_1 q_2 \left< {\bar q}_3 q_4 \right> +{\bar q}_3 q_4 \left< {\bar q}_1 q_2 \right> -\left< {\bar q}_1 q_2 \right> \left< {\bar q}_3 q_4 \right> \]

\[ ({\bar q}_1 q_2) ({\bar q}_3 q_4) ({\bar q}_5 q_6) \rightarrow {\bar q}_1 q_2 \left< {\bar q}_3 q_4 \right> \left< {\bar q}_5 q_6 \right> +{\bar q}_3 q_4 \left< {\bar q}_1 q_2 \right> \left< {\bar q}_5 q_6 \right> +{\bar q}_5 q_6 \left< {\bar q}_1 q_2 \right> \left< {\bar q}_3 q_4 \right> -2\left< {\bar q}_1 q_2 \right> \left< {\bar q}_3 q_4 \right> \left< {\bar q}_5 q_6 \right> \]

for the mean field approximation, we can rewrite the Lagrangian

\[ {\cal L}_{NJL} = 2 G_S \left[ \left( {\bar u} u \right) \left< {\bar u} u \right> +\left( {\bar d} d \right) \left< {\bar d} d \right> +\left( {\bar s} s \right) \left< {\bar s} s \right> - \left< {\bar u} u \right>^2 - \left< {\bar d} d \right>^2 - \left< {\bar s} s \right>^2 \right] \]

\[ {\cal L}_{'t Hooft} = - 2 G_D \left[ \left( {\bar u} u \right) \left< {\bar u} u \right> \left< {\bar s} s \right> + \left( {\bar d} d \right) \left< {\bar u} u \right> \left< {\bar s} s \right> + \left( {\bar s} s \right) \left< {\bar u} u \right> \left< {\bar d} d \right> - 2 \left< {\bar u} u \right>\left< {\bar d} d \right> \left< {\bar s} s \right> \right] \]

\[ {\cal L}_{SC} = G_{DIQ} \left[ \Delta^{k \gamma} \left( {\bar q}_{\ell \delta} i \gamma^5 \epsilon^{\ell m k} \epsilon^{\delta \varepsilon \gamma} q^C_{m \varepsilon} \right) + \left( {\bar q}_{i \alpha} i \gamma^5 \varepsilon^{i j k} \varepsilon^{\alpha \beta \gamma} q^C_{j \beta} \right) \Delta^{k \gamma \dagger} - \Delta^{k \gamma} \Delta^{k \gamma \dagger} \right] \]

\[ {\cal L}_{SC6} = K_D \left[ \left( {\bar q}_{m \varepsilon} q_{n \eta} \right) \Delta^{k \gamma} \Delta^{m \varepsilon \dagger} + \left( {\bar q}_{i \alpha} i \gamma^5 \varepsilon^{i j k} \varepsilon^{\alpha \beta \gamma} q^C_{j \beta} \right) \Delta^{m \varepsilon \dagger} \left< {\bar q}_{m \varepsilon} q_{n \eta} \right> \right] \]

\[ + K_D \left[\Delta^{k \gamma} \left( {\bar q}_{\ell \delta} i \gamma^5 \epsilon^{\ell m n} \epsilon^{\delta \varepsilon \eta} q^C_{m \varepsilon} \right) \left< {\bar q}_{m \varepsilon} q_{n \eta} \right> -2 \Delta^{k \gamma} \Delta^{m \varepsilon \dagger} \left< {\bar q}_{m \varepsilon} q_{n \eta} \right> \right] \]

If we make the definition $ {\tilde \Delta} = 2 G_{DIQ} \Delta $


References:

Created for Steiner05.

Definition at line 190 of file eos_quark_cfl6.h.

Member Function Documentation

◆ calc_eq_temp_p()

virtual int o2scl::eos_quark_cfl6::calc_eq_temp_p ( quark u,
quark d,
quark s,
double &  qq1,
double &  qq2,
double &  qq3,
double &  gap1,
double &  gap2,
double &  gap3,
double  mu3,
double  mu8,
double &  n3,
double &  n8,
thermo qb,
double  temper 
)
virtual

Calculate the EOS from the quark condensates. Return the mass gap equations in qq1, qq2, qq3, and the normal gap equations in gap1, gap2, and gap3.

Using fromqq=true as in eos_quark_njl and nambujl_temp_eos does not work here and will return an error.

If all of the gaps are less than gap_limit, then the nambujl_temp_eos::calc_temp_p() is used, and gap1, gap2, and gap3 are set to equal u.del, d.del, and s.del, respectively.

Reimplemented from o2scl::eos_quark_cfl.

◆ eigenvalues6()

virtual int o2scl::eos_quark_cfl6::eigenvalues6 ( double  lmom,
double  mu3,
double  mu8,
double  egv[36],
double  dedmuu[36],
double  dedmud[36],
double  dedmus[36],
double  dedmu[36],
double  dedmd[36],
double  dedms[36],
double  dedu[36],
double  dedd[36],
double  deds[36],
double  dedmu3[36],
double  dedmu8[36] 
)
virtual

Given the momentum mom, and the chemical potentials associated with the third and eighth gluons (mu3 and mu8), this computes the eigenvalues of the inverse propagator and the assocated derivatives.

Note that this is not the same as eos_quark_cfl::eigenvalues() which returns dedmu rather dedqqu.

◆ make_matrices()

virtual int o2scl::eos_quark_cfl6::make_matrices ( double  lmom,
double  mu3,
double  mu8,
double  egv[36],
double  dedmuu[36],
double  dedmud[36],
double  dedmus[36],
double  dedmu[36],
double  dedmd[36],
double  dedms[36],
double  dedu[36],
double  dedd[36],
double  deds[36],
double  dedmu3[36],
double  dedmu8[36] 
)
virtual

This is used by check_derivatives() to make sure that the derivative entries are right.


The documentation for this class was generated from the following file:

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