Server for Information Technologies Сервер поддерживается
Центром Информационных Технологий
(095) 932-9212, 932-9213, 939-0783
E-mail: info@citforum.ru
Сервер содержит море(!) аналитической информации CIT Forum CD-ROM

GAMMA(3M)

НАЗВАНИЕ
gamma - логарифм гамма-функции

СИНТАКСИС

	#include <math.h>
	
	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М) и которое определено во включаемом файле <values.h>.

СМ. ТАКЖЕ
exp(3M), matherr(3M), values(5).

ДИАГНОСТИКА
При неотрицательных аргументах функция gamma возвращает значение HUGE [см. intro(3)], а внешней переменной errno присваивается значение EDOM. В стандартный протокол будет выдано сообщение о попадании в точку сингулярности.

Если представление корректного результирующего значения приводит к переполнению, то функция gamma возвращает значение HUGE, а переменной errno присваивается значение ERANGE.

Изложенная процедура обработки ошибок может быть изменена посредством функции matherr(3M).

Comments: info@citmgu.ru
Designed by Andrey Novikov
Copyright © CIT
Обновлено: 13.03.2015