Provided by: manpages-es_1.55-10_all
NOMBRE
lgamma - logaritmo de la función gamma
SINOPSIS
#include <math.h> double lgamma(double x); float lgammaf(float x); long double lgammal(long double x); double lgamma_r(double x, int *signp); float lgammaf_r(float x, int *signp); long double lgammal_r(long double x, int *signp);
DESCRIPCIÓN
La función Gamma se define como Gamma(x) = integral de 0 a infinito de t^(x-1) e^-t dt Está definida para todo número real excepto enteros no positivos. Para un entero no positivo m la función se define como Gamma(m+1) = m! y, de manera más general, para todo x: Gamma(x+1) = x * Gamma(x) Para x < 0.5 se puede utilizar Gamma(x) * Gamma(1-x) = PI/sin(PI*x) La función lgamma() devuelve el logaritmo natural del valor absoluto de la función Gamma. El signo de la función Gamma se devuelve en la variable entera externo signgam declarado en <math.h>. Vale 1 cuando la función Gamma es positiva o cero, -1 cuando es negativa. Ya que usar una localización constante signgam no se considera hilo-seguro, se han introducido las funciones lgamma_r() etc.; devuelven el signo en el parámetro signp. Para valores enteros no positivos de x, lgamma() devuelve HUGE_VAL, pone en errno el valor ERANGE y lanza la excepción de división por cero. (De manera similar, lgammaf() devuelve HUGE_VALF y lgammal() devuelve HUGE_VALL.)
ERRORES
Una aplicación que desee comprobar situaciones de error debería asignar a errno el valor cero y llamar a feclearexcept(FE_ALL_EXCEPT) antes de llamar a estas funciones. A la vuelta, si errno es distinto de cero o fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) es distinto de cero, es que ha ocurrido un error. ERANGE Argumento no válido - valor entero no positivo de x.
CONFORME A
C99, SVID 3, BSD 4.3
VÉASE TAMBIÉN
tgamma(3) 10 agosto 2002 LGAMMA(3)