3.2.1 Oracle 数学ライブラリ
libsunmath 数学ライブラリには、どの標準でも規定されていないが、数値ソフトウェアで役立つ関数が含まれています。また、libm.so.2 に含まれているが、libm.so.1 には含まれていない関数の多くも含まれています。libsunmath は、共有オブジェクトと静的アーカイブの両方として提供されます。
Table 3–3 は、libm.so.2 には含まれていない libsunmath 内の関数のリストを示しています。 各数学関数について、この表では、一般に C プログラムから呼び出される倍精度バージョンの関数の名前のみを示しています。
表 3-3 libsunmath の内容
|
|
基本超越関数
|
exp10
|
度単位の三角関数
|
asind、acosd、atand、atan2d、sind、cosd、sincosd、tand
|
πでスケーリングされた三角関数
|
asinpi、acospi、atanpi、atan2pi、sinpi、cospi、sincospi、tanpi
|
倍精度のπの引数還元を使用した三角関数
|
asinp、acosp、atanp,sinp、cosp、sincosp、tanp
|
財務関数
|
annuity、compound
|
整数丸め関数
|
aint、anint、irint、nint
|
IEEE 規格で推奨される関数
|
signbit
|
IEEE 分類関数
|
fp_class、isinf、isnormal、issubnormal、iszero
|
役立つ IEEE 値を提供する関数
|
min_subnormal、max_subnormal、min_normal、max_normal、infinity、signaling_nan、quiet_nan
|
加法的乱数ジェネレータ
|
i_addran_、i_addrans_、i_init_addrans_、i_get_addrans_、i_set_addrans_、r_addran_、r_addrans_、r_init_addrans_、r_get_addrans_、r_set_addrans_、d_addran_、d_addrans_、d_init_addrans_、d_get_addrans_、d_set_addrans_、u_addrans_
|
線形合同乱数ジェネレータ
|
i_lcran_、i_lcrans_、i_init_lcrans_、i_get_lcrans_、i_set_lcrans_、r_lcran_、r_lcrans_、d_lcran_、d_lcrans_、u_lcrans_
|
キャリー付き乗算乱数ジェネレータ
|
i_mwcran_、i_mwcrans_、i_init_mwcrans_、i_get_mwcrans_、i_set_mwcrans、i_lmwcran_、i_lmwcrans_、i_llmwcran_、i_llmwcrans_、u_mwcran_、u_mwcrans_、u_lmwcran_、u_lmwcrans、u_llmwcran_、u_llmwcrans_、r_mwcran_、r_mwcrans_、d_mwcran_、d_mwcrans_、smwcran_
|
乱数のシャッフル
|
i_shufrans_、r_shufrans_、d_shufrans_、u_shufrans_
|
データ変換
|
convert_external
|
丸めモードと浮動小数点例外フラグの制御
|
ieee_flags
|
浮動小数点トラップの処理
|
ieee_handler、sigfpe
|
ステータスの表示
|
ieee_retrospective
|
非標準の演算の有効化/無効化
|
standard_arithmetic、nonstandard_arithmetic
|
|