Equation of state for a nonrelativistic fermion. More...
#include <fermion_deriv_nr.h>
This does not include the rest mass energy in the chemical potential or the rest mass energy density in the energy density to alleviate numerical precision problems at low densities
This implements an equation of state for a nonrelativistic fermion using direct integration. After subtracting the rest mass from the chemical potentials, the distribution function is
where is the effective chemical potential,
is the rest mass, and
is the effective mass. For later use, we define
.
Uncertainties are given in unc.
Evaluation of the derivatives
The relevant derivatives of the distribution function are
We also need the derivative of the entropy integrand w.r.t. the distribution function, which is quite simple
where the entropy density is
The derivatives can be integrated directly or they may be converted to integrals over the distribution function through an integration by parts
using the distribution function for and 0 and
as the limits, we have
as long as vanishes at
. Rewriting,
as long as vanishes at
.
Explicit forms
1) The derivative of the density wrt the chemical potential
Using we get
2) The derivative of the density wrt the temperature
Using we get
3) The derivative of the entropy wrt the chemical potential
This verifies the Maxwell relation
4) The derivative of the entropy wrt the temperature
Using
5) The derivative of the density wrt the effective mass
Using we get
Conversion to unitless variables:
After integrating by parts and
, so
or
1) The derivative of the density wrt the chemical potential
2) The derivative of the density wrt the temperature
4) The derivative of the entropy wrt the temperature
5) The derivative of the density wrt the effective mass
Definition at line 227 of file fermion_deriv_nr.h.
Public Member Functions | |
fermion_deriv_nr_tl () | |
Create a fermion with mass m and degeneracy g . | |
virtual void | calc_density_zerot (fermion_deriv &f) |
Calculate properties as function of density at ![]() | |
virtual void | calc_mu_zerot (fermion_deriv &f) |
Calculate properties as function of chemical potential at ![]() | |
virtual int | calc_mu (fermion_deriv &f, fp_t temper) |
Calculate properties as function of chemical potential. | |
virtual int | calc_density (fermion_deriv &f, fp_t temper) |
Calculate properties as function of density. | |
virtual int | pair_mu (fermion_deriv &f, fp_t temper) |
Calculate properties with antiparticles as function of chemical potential. | |
virtual int | pair_density (fermion_deriv &f, fp_t temper) |
Calculate properties with antiparticles as function of density. | |
virtual int | nu_from_n (fermion_deriv &f, fp_t temper) |
Calculate effective chemical potential from density. | |
void | set_density_root (root<> &rp) |
Set the solver for use in calculating the chemical potential from the density. | |
virtual const char * | type () |
Return string denoting type ("fermion_deriv_nr") | |
![]() | |
virtual int | calc_mu (fermion_deriv &f, double temper)=0 |
Calculate properties as function of chemical potential. | |
virtual int | calc_density (fermion_deriv &f, double temper)=0 |
Calculate properties as function of density. | |
virtual int | pair_mu (fermion_deriv &f, double temper)=0 |
Calculate properties with antiparticles as function of chemical potential. | |
virtual int | pair_density (fermion_deriv &f, double temper)=0 |
Calculate properties with antiparticles as function of density. | |
virtual int | nu_from_n (fermion_deriv &f, double temper)=0 |
Calculate effective chemical potential from density. | |
virtual bool | calc_mu_deg (fermion_deriv &f, double temper, double prec) |
Calculate properties as a function of chemical potential using a degenerate expansion. More... | |
virtual bool | calc_mu_ndeg (fermion_deriv &f, double temper, double prec, bool inc_antip=false) |
Calculate properties as a function of chemical potential using a nondegenerate expansion. More... | |
![]() | |
double | heat_cap_ppart_const_vol (part_deriv_t &p, double temper) |
The heat capacity per particle at constant volume (unitless) More... | |
double | heat_cap_ppart_const_press (part_deriv_t &p, double temper) |
The heat capacity per particle at constant pressure (unitless) More... | |
double | compress_adiabatic (part_deriv_t &p, double temper) |
The adiabatic compressibility. More... | |
double | compress_const_tptr (part_deriv_t &p, double temper) |
The isothermal compressibility. More... | |
double | coeff_thermal_exp (part_deriv_t &p, double temper) |
The coefficient of thermal expansion. More... | |
double | squared_sound_speed (part_deriv_t &p, double temper) |
The squared sound speed (unitless) More... | |
Public Attributes | |
fp_t | flimit |
The limit for the Fermi functions (default 20.0) More... | |
fermion_deriv | unc |
Storage for the most recently calculated uncertainties. | |
root_cern | def_density_root |
The default solver for npen_density() and pair_density() | |
Protected Member Functions | |
fp_t | solve_fun (fp_t x, fp_t nog, fp_t msT) |
Function to compute chemical potential from density. | |
fp_t | pair_fun (fp_t x, fermion_deriv &f, fp_t T) |
Function to compute chemical potential from density when antiparticles are included. | |
Protected Attributes | |
root * | density_root |
Solver to compute chemical potential from density. | |
![]() | |
fermion_rel | fr |
A fermion_thermo object. More... | |
double | pi |
Desc. | |
double | pi2 |
Desc. | |
fp_t o2scl::fermion_deriv_nr_tl< fp_t >::flimit |
fermion_deriv_nr will ignore corrections smaller than about .
Definition at line 247 of file fermion_deriv_nr.h.
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).