XLPack 7.0
XLPack 数値計算ライブラリ (C API) リファレンスマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません

◆ qng()

void qng ( double(*)(double)  f,
double  a,
double  b,
double  epsabs,
double  epsrel,
double *  result,
double *  abserr,
int *  neval,
int *  info 
)

有限区間の積分 (分点数自動選択) (21/43/87点ガウス・クロンロッド則)

目的
本ルーチンは要求精度を満たす I = [a, b]におけるfの積分値 を求める. ここで, fはユーザー定義サブルーチンにより与えられる関数である.
21, 43または87点ガウス・クロンロッド則より, 要求精度を満足するように分点数を自動的に選択する.
引数
[in]f被積分関数f(x)を求めるユーザー定義サブルーチンで, 次のように定義すること.
double f(double x)
{
return f(x)の計算値
}
[in]a積分区間の下限.
[in]b積分区間の上限.
[in]epsabs要求絶対誤差. abserr <= max(epsabs, epsrel*|result|) であれば要求精度を満足したものとする.
[in]epsrel要求相対誤差.
abserr <= max(epsabs, epsrel*|result|) であれば要求精度を満足したものとする.
epsabs <= 0 かつ epsrel < 50*eps であれば, epsrel = 50*eps とみなす(epsはマシンイプシロン).
[out]result求められた I = [a, b]におけるfの積分値.
[out]abserr絶対誤差の推定値. 真の誤差に等しいかそれより大きい.
[out]neval被積分関数評価回数.
[out]info= 0: 正常終了
= 1: 最大ステップ数の計算が行われた. qngでこの問題を計算するのは難しい.
出典
SLATEC (QUADPACK)