名 前
gamma, gammaf, gammal − ガ ン マ 関 数 (の 自 然 対 数 )
書 式
#include <math.h>
double
gamma(double x);
float gammaf(float x);
long double gammal(long double x);
−lm で リ ン ク す る 。
glibc 向 け の 機 能 検 査 マ ク ロ の 要 件 (feature_test_macros(7) 参 照 ):
gamma():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
gammaf(), gammal():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600
説 明
こ れ ら の 関 数 は 非 推 奨 で あ る 。 そ の 代 わ り 、 場 面 に 応 じ て tgamma(3) か lgamma(3) を 使 う こ と 。 ガ ン マ 関 数 の 定 義 に つ い て は 、 tgamma(3) を 参 照 の こ と 。
*BSD版
4.4BSD の libm と FreeBSD の い
く つ か の バ ー
ジ ョ ン に は 、
関 数 gamma() が 含 ま
れ て お り 、 期
待 通 り ガ ン マ
関 数 を 計 算 で
き る 。
glibc版
Glibcは 、 関 数 gamma()
を 含 ん で い る
が 、 こ れ は
lgamma(3) と 等 価 で
あ り 、 ガ ン マ
関 数 の 自 然 対
数 を 計 算 す る
。
返 り 値
lgamma(3) を 参 照 。
エ ラ ー
lgamma(3) を 参 照 。
準 拠
シ ス テ ム に よ っ て 振 舞 い が 異 な る と い う 歴 史 的 な 経 緯 の た め 、 こ の 関 数 は ど の 標 準 規 格 で も 規 定 さ れ て い な い 。
注 意
歴 史
4.2BSDに お い て は 、 関 数 gamma() が 実 際 に 計 算 す る の は ln(|Gamma(|x|)|) で あ り 、 Gamma(|x|) の 符 号 が extern int signgam に 格 納 さ れ て い た 。 4.3BSDに な っ て 関 数 名 が 変 更 さ れ 、 lgamma(3) と な り 、 そ の マ ニ ュ ア ル ペ ー ジ で は
"「 い つ の 日 か gamma の 名 は 復 活 し 、 ガ ン マ 関 数 に 冠 さ れ る で あ ろ う 」 " と い う 誓 い が 述 べ ら れ て い た 。 こ れ は 4.4BSDに な っ て 実 現 さ れ 、 gamma() は ま さ に ガ ン マ 関 数 を 計 算 す る よ う に な っ た 。 (も う signgam に は 作 用 し な い 。 ) と こ ろ が 、 こ れ が 登 場 す る 時 期 が 遅 す ぎ た た め 、 tgamma(3) と い う 「 本 当 の ガ ン マ 関 数 」 が す で に 存 在 し て い る の で あ る 。
関 連 項 目
lgamma(3), signgam(3), tgamma(3)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。