Blame doc/specfunc-fermi-dirac.rst

Packit 67cb25
.. index:: Fermi-Dirac function
Packit 67cb25
Packit 67cb25
The functions described in this section are declared in the header file
Packit 67cb25
:file:`gsl_sf_fermi_dirac.h`.
Packit 67cb25
Packit 67cb25
Complete Fermi-Dirac Integrals
Packit 67cb25
------------------------------
Packit 67cb25
.. index::
Packit 67cb25
   single: complete Fermi-Dirac integrals
Packit 67cb25
   single: Fj(x), Fermi-Dirac integral
Packit 67cb25
Packit 67cb25
The complete Fermi-Dirac integral :math:`F_j(x)` is given by,
Packit 67cb25
Packit 67cb25
.. only:: not texinfo
Packit 67cb25
Packit 67cb25
   .. math:: F_j(x) := {1\over\Gamma(j+1)} \int_0^\infty dt {t^j  \over (\exp(t-x) + 1)}
Packit 67cb25
Packit 67cb25
.. only:: texinfo
Packit 67cb25
Packit 67cb25
   ::
Packit 67cb25
Packit 67cb25
      F_j(x) := (1/\Gamma(j+1)) \int_0^\infty dt (t^j / (\exp(t-x) + 1))
Packit 67cb25
Packit 67cb25
Note that the Fermi-Dirac integral is sometimes defined without the
Packit 67cb25
normalisation factor in other texts.
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_m1 (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_m1_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral with an index of :math:`-1`. 
Packit 67cb25
   This integral is given by 
Packit 67cb25
   :math:`F_{-1}(x) = e^x / (1 + e^x)`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_0 (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_0_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral with an index of :math:`0`. 
Packit 67cb25
   This integral is given by :math:`F_0(x) = \ln(1 + e^x)`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_1 (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_1_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral with an index of :math:`1`,
Packit 67cb25
   :math:`F_1(x) = \int_0^\infty dt (t /(\exp(t-x)+1))`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_2 (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_2_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral with an index
Packit 67cb25
   of :math:`2`,
Packit 67cb25
   :math:`F_2(x) = (1/2) \int_0^\infty dt (t^2 /(\exp(t-x)+1))`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_int (int j, double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_int_e (int j, double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral with an integer
Packit 67cb25
   index of :math:`j`,
Packit 67cb25
   :math:`F_j(x) = (1/\Gamma(j+1)) \int_0^\infty dt (t^j /(\exp(t-x)+1))`.
Packit 67cb25
.. Complete integral F_j(x) for integer j
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_mhalf (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_mhalf_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral 
Packit 67cb25
   :math:`F_{-1/2}(x)`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_half (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_half_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral 
Packit 67cb25
   :math:`F_{1/2}(x)`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_3half (double x)
Packit 67cb25
              int gsl_sf_fermi_dirac_3half_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the complete Fermi-Dirac integral 
Packit 67cb25
   :math:`F_{3/2}(x)`.
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW
Packit 67cb25
Packit 67cb25
Incomplete Fermi-Dirac Integrals
Packit 67cb25
--------------------------------
Packit 67cb25
.. index::
Packit 67cb25
   single: incomplete Fermi-Dirac integral
Packit 67cb25
   single:  Fj(x,b), incomplete Fermi-Dirac integral
Packit 67cb25
Packit 67cb25
The incomplete Fermi-Dirac integral :math:`F_j(x,b)` is given by,
Packit 67cb25
Packit 67cb25
.. only:: not texinfo
Packit 67cb25
Packit 67cb25
   .. math:: F_j(x,b) := {1\over\Gamma(j+1)} \int_b^\infty dt {t^j  \over (\exp(t-x) + 1)}
Packit 67cb25
Packit 67cb25
.. only:: texinfo
Packit 67cb25
Packit 67cb25
   ::
Packit 67cb25
Packit 67cb25
      F_j(x,b) := (1/\Gamma(j+1)) \int_b^\infty dt (t^j / (\Exp(t-x) + 1))
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_fermi_dirac_inc_0 (double x, double b)
Packit 67cb25
              int gsl_sf_fermi_dirac_inc_0_e (double x, double b, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the incomplete Fermi-Dirac integral with an index
Packit 67cb25
   of zero,
Packit 67cb25
   :math:`F_0(x,b) = \ln(1 + e^{b-x}) - (b-x)`
Packit 67cb25
.. Exceptional Return Values: GSL_EUNDRFLW, GSL_EDOM