Provided by:
manpages-fr-dev_3.27fr1.4-1_all 
NOM
tgamma, tgammaf, tgammal - Veritables fonctions Gamma
SYNOPSIS
#include <math.h>
double tgamma(double x);
float tgammaf(float x);
long double tgammal(long double x);
Effectuez l'edition des liens avec l'option -lm.
Exigences de macros de test de fonctionnalites pour la glibc (consultez
feature_test_macros(7)) :
tgamma(), tgammaf(), tgammal() :
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L
ou cc -std=c99
DESCRIPTION
La fonction Gamma est definie ainsi :
Gamma(x) = integrale de 0 a l'infini de t^(x-1) e^-t dt
Elle est definie pour tout reel sauf les entiers negatifs ou nuls. Pour
un entier positif m, on a
Gamma(m+1) = m!
et, plus generalement pour tout x :
Gamma(x+1) = x * Gamma(x)
De plus, la relation ci-dessous est valable pour toute valeur de x en
dehors des poles :
Gamma(x) * Gamma(1 - x) = PI / sin(PI * x)
VALEUR RENVOY'EE
En cas de reussite, ces fonctions renvoient Gamma(x).
Si x est un NaN, la valeur renvoyee et un NaN.
Si x est une valeur infinie positive, une valeur positive infinie est
renvoyee.
Si x est un entier negatif ou l'infini negatif, une erreur de domaine
est produite et un NaN est renvoye.
En cas de depassement pour le resultat, une erreur d'intervalle se
produit et les fonctions renvoient HUGE_VAL, HUGE_VALF ou HUGE_VALL,
respectivement, avec le bon signe mathematique.
En cas de soupassement (<< underflow >>) pour le resultat, une erreur
d'intervalle se produit et les fonctions renvoient 0, avec le bon signe
mathematique.
Si x vaut -0 ou +0, une erreur de pole se produit et les fonctions
renvoient HUGE_VAL, HUGE_VALF ou HUGE_VALL, respectivement, avec le
meme signe que le 0.
ERREURS
Consultez math_error(7) pour savoir comment determiner qu'une erreur
est survenue lors de l'appel de ces fonctions.
Les erreurs suivantes peuvent se produire :
Erreur de domaine : x est un entier negatif ou l'infini negatif
errno prend la valeur EDOM. Une exception de virgule flottante
incorrecte (FE_INVALID) est levee (mais consultez la section des
BOGUES).
Erreur de pole : x vaut +0 ou -0
errno prend la valeur ERANGE. Une exception de virgule flottante
de division par zero (FE_DIVBYZERO) est levee.
Erreur d'intervalle : depassement pour le resultat
errno est configuree a ERANGE. Une exception de depassement en
virgule flottante (FE_OVERFLOW) est levee.
La glibc donne egalement l'erreur suivante qui n'est pas specifiee dans
C99 ou POSIX.1-2001.
Erreur d'intervalle : soupassement (<< underflow >>) du resultat
Une exception en virgule flottante de soupassement
(FE_UNDERFLOW) est levee.
errno n'est pas modifiee dans ce cas.
VERSIONS
Ces fonctions ont ete introduites dans la glibc dans sa version 2.1.
CONFORMIT'E
C99, POSIX.1-2001.
NOTES
Cette fonction a ete appelee << true gamma function >> (<< veritable
fonction Gamma >>) car il existe deja une fonction gamma(3) qui
retourne un autre resultat (consultez gamma(3) pour des details).
BOGUES
Si x est l'infini negatif, errno n'est pas touchee (elle devrait
prendre la valeur EDOM).
Dans la glibc version 2.3.3 et anterieures, un parametre +0 ou -0
produit a tort une erreur de domaine (errno prend la valeur EDOM et une
exception FE_INVALID est levee), au lieu d'une erreur de pole.
VOIR AUSSI
gamma(3), lgamma(3)
COLOPHON
Cette page fait partie de la publication 3.27 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Thierry Vignaud (2002), Alain Portal
<URL:http://manpagesfr.free.fr/> (2006). Nicolas Francois et l'equipe
francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.