nonrel_fermion Class Reference

Nonrelativistic fermion class. More...

#include <nonrel_fermion.h>

Inheritance diagram for nonrel_fermion:

fermion_T fermion part

Detailed Description

Nonrelativistic fermion class.

The rest mass energy density is given by n*m not n*ms. Note that the effective mass here is the Landau mass, not the Dirac mass.

Pressure is computed with

\[ P = 2 \varepsilon/3 \]

and entropy density with

\[ s = \frac{5 \varepsilon}{3 T} - \frac{n \mu}{T} \]

These relations can be verified with an integration by parts. See, e.g. Callen's "Thermodynamics and an introduction to thermostatistics", 2nd edition, pg. 403 or Landau and Lifshitz, Stat. Phys. 3rd edition, part 1, pg. 164.

The functions fermion::pair_density() and pair_mu() have not been implemented.

Todo:
Check behaviour of calc_density() at zero density, and compare with that from eff_fermion, rel_fermion, and classical.
Todo:
I think calc_mu_zerot() and calc_density_zerot() are missing the proper dependence on the degeneracy, g. (8/20/07) (I think this is fixed now, but should be tested, 8/22/07)
Todo:
Make sure to test with non-interacting equal to true or false, and document whether or not it works with both inc_rest_mass equal to true or false
Idea for future:
This could be improved by performing a Chebyshev approximation (for example) to invert the density integral so that we don't need to use a solver.

Definition at line 91 of file nonrel_fermion.h.


Public Member Functions

 nonrel_fermion (double m=0.0, double g=0.0)
 Create a nonrelativistic fermion with mass 'm' and degeneracy 'g'.
virtual int calc_mu_zerot ()
 Zero temperature fermions.
virtual int calc_density_zerot ()
 Zero temperature fermions.
virtual int calc_mu (const double temper)
 Calculate properties as function of chemical potential.
virtual int calc_density (const double temper)
 Calculate properties as function of density.
virtual int pair_mu (const double temper)
 Calculate properties with antiparticles as function of chemical potential.
virtual int pair_density (const double temper)
 Calculate properties with antiparticles as function of density.
virtual int nu_from_n (const double temper)
 Calculate effective chemical potential from density.
int set_density_root (root< double, funct< double > > &rp)
 Set the solver for use in calculating the chemical potential from the density.
virtual const char * type ()
 Return string denoting type ("nonrel_fermion").

Data Fields

cern_mroot_root< double, funct
< double > > 
def_density_root
 The default solver for calc_density().

Member Function Documentation

virtual int calc_density ( const double  temper  )  [virtual]

Calculate properties as function of density.

If the density is zero, this function just sets part::mu, part::nu, part::ed, part::pr, and part::en to zero and returns without calling the error handler (even though at zero density and finite temperature, the chemical potentials formally are equal to $ -\infty $).

Implements fermion_T.


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

Documentation generated with Doxygen and provided under the GNU Free Documentation License. See License Information for details.

Project hosting provided by SourceForge.net Logo, O2scl Sourceforge Project Page