[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

11. 浮動小数点

11.1 浮動小数点に関する諸定義  


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

11.1 浮動小数点に関する諸定義

関数: BFFAC (exp,n)
階乗関数(シフトしたΓ関数)のBFLOAT版。第二の引数は内部で保ち、返すべき精度で あり、特別に一対を要求する事は良い考えである。この関数はLOAD(BFFAC)を実行すれ ば利用可能となる。

 
(*訳者注:

share2/bffac.lspがプログラム本体、USAGEはshare2/bffac.usgである。従って、
FILE_SEARCH_MAXIMAかFILE_SEARCH_LISPにこのパスがなければフルパスでloadしなけ
ればならない。

*)

変数: ALGEPSILON
デフォルト値は10^(-8)である。ALGEPSILONの値はALGSYSで用いられる。

関数: BFLOAT (X)
全ての数(number)と数値関数をbigfloatに変換する。FPPREC[16]をNに設定すると、 bigfloat型の数値精度はN桁になる。FLOAT2BF[FALSE]がFALSEであれば、浮動小数点数 がbigfloat型の数値に変換される時に警告メッセージが表示される(何故なら、これは 精度を失ないかねない為である)。

関数: BFLOATP (exp)
expがbigfloat型の数値であればTRUE、それ以外はFALSEとなる。

関数: BFPSI (n,z,fpprec)
実引数と整数次数のpolygammaを与える。 digammaに対してはBFPSIO(z,fpprec)がより直接的である。 - BFPSIO(1,fpprec)は%GAMMAをBFLOATにする。これを利用する為にはLOAD(BFFAC);を 実行せよ。

変数: BFTORAT
デフォルト値:[FALSE] - 有理数に対し、bfloat型数値への変換を制御する。

変数: BFTRUNC
デフォルト値:[TRUE] - 零と異なるbigfloat型の数値で、長く続く零を表示させない。 つまり、BFTRUNC:FALSE,BFLOAT(1);であれば1.000000000000000B0と表示し、そうで なければ1.0B0と表示する。

関数: CBFAC (z,fpprec)
複素bfloat型数値向けの階乗。LOAD(BFAC)を実行すれば使える。より詳細は、 share2/bfac.usgを参照せよ。

関数: FLOAT (exp)
expに含まれる整数、有理数とbigfloat型数値を浮動小数点数に変換する。EVFLAGと FLOATでも非整数の有理数やbigfloat型数値を浮動小数点数に変換する。

変数: FLOAT2BF
デフォルト値:[FALSE] - FALSEであれば、浮動小数点数をbigfloat型数値に変換する 際に警告メッセージを出力する(何故なら、これは精度を失ないかねない為である)。

関数: FLOATDEFUNK
- 浮動小数点関数を数学的な式から作る為の道具。入力式を取り、それを浮動小数点 数値関数としてOPTIMIZEし、それから全ての変数に対しMODE_DECLAREに挿入する。 これはROMBERG、PLOT2、INTERPOLATE等を用いる為の方法である。

 
例えば、

EXP:あるmacsymaの式;

とすると

FLOATDEFUNK('F,['X],EXP);

で関数F(X)を定義する(より詳細は、PRINTFILE(MCOMPI,DOC,MAXDOC);を実行せよ)。

 
(* 訳者注:

Maxima-5.6にFLOATDEFUNK命令は含まれていない。

*)

関数: FLOATNUMP (exp)
expが浮動小数点数であればTRUE、それ以外はFALSE。

変数: FPPREC
デフォルト値:[16] - 浮動小数点数の精度。希望する精度を表す整数で設定可能。

変数: FPPRINTPREC
デフォルト値:[0] - bigfloat型数値を表示する場合、大きな桁数で計算を行う必要が あるが、その答をより小さな桁数で表示する場合に表示すべき桁数である。 FPPRINTPRECは0(初期値)、又は>=FPPRECであれば、FPPRECの数値は表示で用いられる 精度数値を制御する。一方で、FPPRINTPRECが2とFPPREC-1の間にあれば、それが使わ れる桁数を制御する。(その最小の桁数は2であり、左側の点と右側の点である。 FPPRINTRECに値1を設定する事は不法である)。

関数: ?ROUND (x,&optional-divisor)
浮動小数点数Xを最も近い整数に丸める。この引数は通常のシステムの浮動小数点数で bigfloat型数値では無い。?で開始する名前が通常のcommon lispの関数である事を 示している。

 
(C3) ?round(-2.8);
(D3) 				      - 3

関数: ?TRUNCATE (x,&optional-divisor)
浮動小数点数Xで0以下を切捨てて整数にする。引数は通常のシステム浮動小数点数で bigfloat型数値では無い。?で開始する名前が通常のcommon lispの関数である事を 示している。

 
(C4) ?truncate(-2.8);
(D4) 				      - 2
(C5) ?truncate(2.4);
(D5) 				       2
(C6) ?truncate(2.8);
(D6) 				       2

変数: ZUNDERFLOW
デフォルト値:[TRUE] - FALSEであれば、浮動小数点数のアンダーフロウが生じた場合 にエラー表示を行う。現行のNIL Macsymaでは、全ての浮動小数点数のアンダーフロウ、 浮動小数点数のオーバーフロウと零による割算エラーは信号のエラーであり、この スイッチは無視される。


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Hiroshi Yokota on September, 16 2002 using texi2html