tgamma - ライブラリコールの説明 - Linux コマンド集 一覧表
- 名前
- 書式
- 説明
- エラー
- 準拠
- 関連項目
名前
tgamma, tgammaf, tgammal - 本当のガンマ関数
書式
#include <math.h>
double tgamma(double
x
);
float tgammaf(float
x
);
long double tgammal(long double
x
);
コンパイル時にオプション -std=c99 を、
リンク時にオプション -lm を使用すること。
説明
ガンマ関数は以下のように定義される:
Gamma(x) = t^(x-1) e^-t dt の 0 から無限大までの積分
この関数は正でない整数を除くすべての実数に対して定義されている。
非負の整数 m
に関して、以下が成立する:
Gamma(m+1) = m!
より一般的には、すべての x
に関して以下が成立する:
Gamma(x+1) = x * Gamma(x)
さらに、極を除くすべての x
で次式も成立する:
Gamma(x) * Gamma(1-x) = PI/sin(PI*x)
この関数は、引き数 x
に対するガンマ関数の値を返す。
この関数は「本当の (true) ガンマ関数」と呼ばれる。
なぜなら、
gamma
()という関数がすでに存在し、他の値を返すからである。
エラー
エラーをチェックするためには、これらの関数を呼び出す前に
errno
を 0 にセットし、
feclearexcept(FE_ALL_EXCEPT)
を呼べばよい。
関数実行後に、
errno
が 0 以外か、
fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW)
が 0 以外ならば、エラーが発生したことが分かる。
x
が大きすぎる場合、range error が発生する。
x
が 0 である場合、pole error が発生する。
x
が負の整数の場合には domain error (もしくは pole error) が発生する。
準拠
関連項目
- Linux Tips 関連記事
- Linux Tips(目次)
- Linux ディストリビューション一覧
- rpm のファイル名にあるi386とかi686とは
- 自分のマシンの情報を調べる
- cron の設定
- ssh の root ログインを禁止する
- ssh を、ユーザ、IPでアクセス制限
- 鍵交換方式によるssh接続
- 鍵交換方式によるssh接続( windowsから )
- 複数ファイル内の文字列を置換して上書き保存する
- あるグループをイニシャルグループとするユーザー一覧出力
- 複数ファイルのファイル名を一括変換する
- 連番ファイルをコマンド一発で作成する
- 中身がランダムなファイルを任意のサイズで作成する
- Linux ユーザーアカウントをロック・アンロックする