HOME > Linux Tips ( 目次 ) > Linux コマンド 一覧表 > g > gamma - ライブラリコールの説明

gamma - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 履歴
  5. 準拠
  6. 関連項目

名前

gamma, gammaf, gammal - ガンマ関数(glibc版はその自然対数を返す)

書式

#include <math.h>
double gamma(double x );
float gammaf(float x );
long double gammal(long double x );
リンク時はオプション -lm を使用すること。

説明

ガンマ関数の定義については、   tgamma (3) を参照のこと。

*BSD版

4.4BSDとFreeBSDのlibmは、関数 gamma ()を含んでおり、期待通りガンマ関数を計算する。

glibc版

Glibcは、関数 gamma ()を含んでいるが、これは lgamma ()と等価であり、ガンマ関数の自然対数を計算する。 (これは過去の実装との互換性のために存在するものであり、 この関数を使ってはならない。)

履歴

4.2BSDにおいては、関数 gamma ()が実際に計算するのは ln(|Gamma(| x |)|)であり、 Gamma(| x |)の符号が extern int signgam に格納されていた。 4.3BSDになって関数名が変更され、 lgamma ()となり、そのマニュアルページでは

「いつの日かgammaの名は復活し、ガンマ関数に冠されるであろう」

という誓いが述べられていた。 これは4.4BSDになって実現され、 gamma ()はまさにガンマ関数を計算するようになった。 (もう signgam には作用しない。) ところが、これが登場する時期が遅すぎたため、 tgamma ()という「本当のガンマ関数」がすでに存在するのである。

準拠

4.2BSD. 過去の間違った実装との互換性のために存在する。

関連項目

  lgamma (3),  signgam (3),  tgamma (3) 

Linux Tips 関連記事
Linux Tips(目次)
Linux ディストリビューション一覧
rpm のファイル名にあるi386とかi686とは
自分のマシンの情報を調べる
cron の設定
ssh の root ログインを禁止する
ssh を、ユーザ、IPでアクセス制限
鍵交換方式によるssh接続
鍵交換方式によるssh接続( windowsから )
複数ファイル内の文字列を置換して上書き保存する
あるグループをイニシャルグループとするユーザー一覧出力
複数ファイルのファイル名を一括変換する
連番ファイルをコマンド一発で作成する
中身がランダムなファイルを任意のサイズで作成する
Linux ユーザーアカウントをロック・アンロックする