Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Module « scipy.special »

Fonction gammaln - module scipy.special

Signature de la fonction gammaln

Description

gammaln.__doc__

gammaln(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj])

gammaln(x, out=None)

Logarithm of the absolute value of the gamma function.

Defined as

.. math::

   \ln(\lvert\Gamma(x)\rvert)

where :math:`\Gamma` is the gamma function. For more details on
the gamma function, see [dlmf]_.

Parameters
----------
x : array_like
    Real argument
out : ndarray, optional
    Optional output array for the function results

Returns
-------
scalar or ndarray
    Values of the log of the absolute value of gamma

See Also
--------
gammasgn : sign of the gamma function
loggamma : principal branch of the logarithm of the gamma function

Notes
-----
It is the same function as the Python standard library function
:func:`math.lgamma`.

When used in conjunction with `gammasgn`, this function is useful
for working in logspace on the real axis without having to deal
with complex numbers via the relation ``exp(gammaln(x)) =
gammasgn(x) * gamma(x)``.

For complex-valued log-gamma, use `loggamma` instead of `gammaln`.

References
----------
.. [dlmf] NIST Digital Library of Mathematical Functions
          https://dlmf.nist.gov/5

Examples
--------
>>> import scipy.special as sc

It has two positive zeros.

>>> sc.gammaln([1, 2])
array([0., 0.])

It has poles at nonpositive integers.

>>> sc.gammaln([0, -1, -2, -3, -4])
array([inf, inf, inf, inf, inf])

It asymptotically approaches ``x * log(x)`` (Stirling's formula).

>>> x = np.array([1e10, 1e20, 1e40, 1e80])
>>> sc.gammaln(x)
array([2.20258509e+11, 4.50517019e+21, 9.11034037e+41, 1.83206807e+82])
>>> x * np.log(x)
array([2.30258509e+11, 4.60517019e+21, 9.21034037e+41, 1.84206807e+82])