GAMMA
Section: Linux Programmer's Manual (3)
Updated: 2007-07-26
Index
JM Home Page
roff page
名前
gamma, gammaf, gammal - ガンマ関数(glibc版はその自然対数を返す)
書式
#include <math.h>
double gamma(double x);
float gammaf(float x);
long double gammal(long double x);
-lm でリンクする。
glibc 向けの機能検査マクロの要件
(feature_test_macros(7)
参照):
gamma(),
gammaf(),
gammal():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
説明
ガンマ関数の定義については、
tgamma(3)
を参照のこと。
*BSD版
4.4BSDとFreeBSDのlibmは、関数
gamma()
を含んでおり、期待通りガンマ関数を計算する。
glibc版
Glibcは、関数
gamma()
を含んでいるが、これは
lgamma()
と等価であり、ガンマ関数の自然対数を計算する。
(これは過去の実装との互換性のために存在するものであり、
この関数を使ってはならない。)
準拠
4.2BSD. 過去の間違った実装との互換性のために存在する。
注意
歴史
4.2BSDにおいては、関数
gamma()
が実際に計算するのは
ln(|Gamma(|x|)|)
であり、
Gamma(|x|)
の符号が extern int signgam に格納されていた。
4.3BSDになって関数名が変更され、
lgamma()
となり、そのマニュアルページでは
「いつの日かgammaの名は復活し、ガンマ関数に冠されるであろう」
という誓いが述べられていた。
これは4.4BSDになって実現され、
gamma()
はまさにガンマ関数を計算するようになった。
(もう signgam には作用しない。)
ところが、これが登場する時期が遅すぎたため、
tgamma()
という「本当のガンマ関数」がすでに存在するのである。
関連項目
lgamma(3),
signgam(3),
tgamma(3)
Index
- 名前
-
- 書式
-
- 説明
-
- *BSD版
-
- glibc版
-
- 準拠
-
- 注意
-
- 歴史
-
- 関連項目
-
This document was created by
man2html,
using the manual pages.
Time: 04:31:42 GMT, November 19, 2007