Manpages

名 前

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/ に 書 か れ て い る 。