Man Linux: Main Page and Category List

NAME

       gamma, gammaf, gammal - (logarithm of the) gamma function

SYNOPSIS

       #include <math.h>

       double gamma(double x);
       float gammaf(float x);
       long double gammal(long double x);

       Link with -lm.

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       gamma(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
       gammaf(), gammal(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600

DESCRIPTION

       These functions are deprecated: instead, use either  the  tgamma(3)  or
       the lgamma(3) functions, as appropriate.

       For the definition of the Gamma function, see tgamma(3).

   *BSD version
       The  libm in 4.4BSD and some versions of FreeBSD had a gamma() function
       that computes the Gamma function, as one would expect.

   glibc version
       Glibc has a gamma()  function  that  is  equivalent  to  lgamma(3)  and
       computes the natural logarithm of the Gamma function.

RETURN VALUE

       See lgamma(3).

ERRORS

       See lgamma(3).

CONFORMING TO

       Because  of  historical  variations  in  behavior  across systems, this
       function is not specified in any standard.

NOTES

   History
       4.2BSD had a gamma() that computed ln(|Gamma(|x|)|), leaving  the  sign
       of  Gamma(|x|) in the external integer signgam.  In 4.3BSD the name was
       changed to lgamma(3), and the man page promises

           "At some time in the future the name gamma  will  be  rehabilitated
           and used for the Gamma function"

       This  did  indeed  happen  in  4.4BSD, where gamma() computes the Gamma
       function (with no effect on signgam).  However, this came too late, and
       we now have tgamma(3), the "true gamma" function.

SEE ALSO

       lgamma(3), signgam(3), tgamma(3)

COLOPHON

       This  page  is  part of release 3.24 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at http://www.kernel.org/doc/man-pages/.