GAMMA(3M) GAMMA(3M)
НАЗВАНИЕ
gamma - логарифм гамма-функции
СИНТАКСИС
#include
double gamma (x)
double x;
extern int signgam;
ОПИСАНИЕ
Функция gamma возвращает значение натурального логариф-
ма от абсолютной величины соответствующего значения
гамма-функции, то есть ln(|Г(x)|), где Г(x) определяет-
ся как интеграл по t функции
exp(-t) * t^(x-1)
в пределах от 0 до x. Знак Г(x) передается во внешней
целочисленной переменной signgam. Аргумент x может быть
и неположительным числом.
Следующий фрагмент программы на языке C может быть ис-
пользован для вычисления Г:
if ((y = gamma(x)) >= LN_MAXDOUBLE)
error();
y = signgam * exp(y);
где LN_MAXDOUBLE - минимальное значение, которое обус-
лавливает выдачу диагностики о выходе за допустимые
пределы значений для функции exp(3М) и которое опреде-
лено во включаемом файле .
СМ. ТАКЖЕ
exp(3M), matherr(3M), values(5).
ДИАГНОСТИКА
При неотрицательных аргументах функция gamma возвращает
значение HUGE [см. intro(3)], а внешней переменной
errno присваивается значение EDOM. В стандартный прото-
кол будет выдано сообщение о попадании в точку сингу-
лярности.
Если представление корректного результирующего значения
приводит к переполнению, то функция gamma возвращает
значение HUGE, а переменной errno присваивается значе-
ние ERANGE.
Изложенная процедура обработки ошибок может быть изме-
нена посредством функции matherr(3M).
|