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

◆ covar()

void covar ( int  n,
int  ldr,
double  r[],
int  ipvt[],
double  tol,
double  work[],
int *  info 
)

非線形最小二乗近似の分散共分散行列

目的
covarは, lmder, lmder1, lmdif, lmstrまたはlmstr1により求められた非線形最小二乗近似の分散共分散行列を求める.

m x n 行列 A について, 分散共分散行列と呼ばれる n x n 対称行列 C が次のように定義される.
C = (A^T*A)^(-1)
本ルーチンは, lmder, lmder1, lmdif, lmstrまたはlmstr1により得られるQR分解結果を使ってこれを求める.
引数
[in]n分散共分散行列の次数. (n > 0)
[out]ldr二次元配列r[][]の整合寸法. (ldr >= n)
[in,out]r[][]配列 r[lr][ldr] (lr >= n)
[in] QR分解 AP = QR より得られる上三角行列 R. (P は ipvt[]で与えられる置換行列, Q は m x n 直交行列である)
[out] 分散共分散行列 (対称な正方行列).
[out]ipvt[]配列 ipvt[lipvt] (lipvt >= n)
置換行列を定義するピボット情報.
[in]tol行列 A のランク数を決めるための許容値. (tol > 0)
R の対角成分のうち, (絶対値最大の対角成分×tol)より絶対値が小さい対角成分があればランク落ちと見なす.
[out]work[]配列 work[lwork] (lwork >= n)
作業領域.
[out]info= 0: 正常終了
= -1: 入力パラメータ n の誤り (n <= 0)
= -2: 入力パラメータ ldr の誤り (ldr < n)
= -5: 入力パラメータ tol の誤り (tol <= 0)
出典
netlib/minpack