tgamma man page on Archlinux

 Man page or keyword search:   man All Sections 1 - General Commands 2 - System Calls 3 - Subroutines, Functions 4 - Special Files 5 - File Formats 6 - Games and Screensavers 7 - Macros and Conventions 8 - Maintenence Commands 9 - Kernel Interface New Commands Server 4.4BSD AIX Alpinelinux Archlinux Aros BSDOS BSDi Bifrost CentOS Cygwin Darwin Debian DigitalUNIX DragonFly ElementaryOS Fedora FreeBSD Gentoo GhostBSD HP-UX Haiku Hurd IRIX Inferno JazzOS Kali Knoppix LinuxMint MacOSX Mageia Mandriva Manjaro Minix MirBSD NeXTSTEP NetBSD OPENSTEP OSF1 OpenBSD OpenDarwin OpenIndiana OpenMandriva OpenServer OpenSuSE OpenVMS Oracle PC-BSD Peanut Pidora Plan9 QNX Raspbian RedHat Scientific Slackware SmartOS Solaris SuSE SunOS Syllable Tru64 UNIXv7 Ubuntu Ultrix UnixWare Xenix YellowDog aLinux   11224 pages apropos Keyword Search (all sections) Output format html ascii pdf view pdf save postscript
[printable version]

```TGAMMA(3)		   Linux Programmer's Manual		     TGAMMA(3)

NAME
tgamma, tgammaf, tgammal - true gamma function

SYNOPSIS
#include <math.h>

double tgamma(double x);
float tgammaf(float x);
long double tgammal(long double x);

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

tgamma(), tgammaf(), tgammal():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L;
or cc -std=c99

DESCRIPTION
The Gamma function is defined by

Gamma(x) = integral from 0 to infinity of t^(x-1) e^-t dt

It is defined for every real number except  for	nonpositive  integers.
For nonnegative integral m one has

Gamma(m+1) = m!

and, more generally, for all x:

Gamma(x+1) = x * Gamma(x)

Furthermore,  the  following  is	 valid for all values of x outside the
poles:

Gamma(x) * Gamma(1 - x) = PI / sin(PI * x)

RETURN VALUE
On success, these functions return Gamma(x).

If x is a NaN, a NaN is returned.

If x is positive infinity, positive infinity is returned.

If x is a negative integer, or is negative  infinity,  a	 domain	 error
occurs, and a NaN is returned.

If the result overflows, a range error occurs, and the functions return
HUGE_VAL, HUGE_VALF, or HUGE_VALL, respectively, with the correct math‐
ematical sign.

If  the	result	underflows,  a	range  error occurs, and the functions
return 0, with the correct mathematical sign.

If x is -0 or +0,  a  pole  error  occurs,  and	the  functions	return
HUGE_VAL,  HUGE_VALF, or HUGE_VALL, respectively, with the same sign as
the 0.

ERRORS
See math_error(7) for information on how to determine whether an	 error
has occurred when calling these functions.

The following errors can occur:

Domain error: x is a negative integer, or negative infinity
errno  is	 set  to  EDOM.	  An  invalid floating-point exception
(FE_INVALID) is raised (but see BUGS).

Pole error: x is +0 or -0
errno is set to ERANGE.  A divide-by-zero floating-point	excep‐
tion (FE_DIVBYZERO) is raised.

Range error: result overflow
errno  is	 set  to ERANGE.  An overflow floating-point exception
(FE_OVERFLOW) is raised.

glibc also gives the following error which is not specified in  C99  or
POSIX.1-2001.

Range error: result underflow
An underflow floating-point exception (FE_UNDERFLOW) is raised.

errno is not set for this case.

VERSIONS
These functions first appeared in glibc in version 2.1.

CONFORMING TO
C99, POSIX.1-2001.

NOTES
This  function  had  to	be called "true gamma function" since there is
already a function gamma(3) that returns something else	(see  gamma(3)
for details).

BUGS
If x is negative infinity, errno is not set (it should be set to EDOM).

In  glibc  versions  2.3.3  and earlier, an argument of +0 or -0 incor‐
rectly produced a domain error (errno set to  EDOM  and	an  FE_INVALID
exception raised), rather than a pole error.

gamma(3), lgamma(3)

COLOPHON
This  page  is  part of release 3.65 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/.

GNU				  2010-09-20			     TGAMMA(3)
```
[top]

List of man pages available for Archlinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.