Particles and Nuclei Sub-Library: Version 0.910
Public Member Functions | Data Fields
nonrel_fermion Class Reference

Nonrelativistic fermion class. More...

#include <nonrel_fermion.h>

Inheritance diagram for nonrel_fermion:
fermion_eval_thermo fermion_zerot

Detailed Description

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 pg. 403 or Landau 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:
Implement pair_density() and pair_mu().
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 75 of file nonrel_fermion.h.

Public Member Functions

 nonrel_fermion ()
 Create a nonrelativistic fermion with mass 'm' and degeneracy 'g'.
virtual void calc_mu_zerot (fermion &f)
 Zero temperature fermions.
virtual void calc_density_zerot (fermion &f)
 Zero temperature fermions.
virtual void calc_mu (fermion &f, double temper)
 Calculate properties as function of chemical potential.
virtual void calc_density (fermion &f, double temper)
 Calculate properties as function of density.
virtual void pair_mu (fermion &f, double temper)
 Calculate properties with antiparticles as function of chemical potential.
virtual void pair_density (fermion &f, double temper)
 Calculate properties with antiparticles as function of density.
virtual void nu_from_n (fermion &f, double temper)
 Calculate effective chemical potential from density.
int set_density_root (root< funct > &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< functdef_density_root
 The default solver for calc_density().

Member Function Documentation

virtual void nonrel_fermion::calc_density ( fermion f,
double  temper 
) [virtual]

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_eval_thermo.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Friends

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

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.