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

◆ Zpocon()

Sub Zpocon ( Uplo As  String,
N As  Long,
A() As  Complex,
ANorm As  Double,
RCond As  Double,
Info As  Long 
)

行列の条件数 (正定値エルミート行列)

目的
本ルーチンはZpotrfにより計算されたコレスキー分解 A = U^H*U または A = L*L^H を用いて正定値エルミート行列の(1-ノルムによる)条件数の推定を行う.

norm(inv(A))の推定値を求め, 次のように条件数の逆数を計算する.
RCond = 1 / (norm(A) * norm(inv(A)))
引数
[in]Uplo分解形のUあるいはLのどちらが格納されているかを指定.
= "U": コレスキー分解 A = U^H*U の上三角行列 U.
= "L": コレスキー分解 A = L*L^H の下三角行列 L.
[in]N行列Aの行および列数. (N >= 0) (N = 0 の場合, RCond = 1 を返す)
[in]A()配列 A(LA1 - 1, LA2 - 1) (LA1 >= N, LA2 >= N)
Zpotrfにより計算されたコレスキー分解 A = U^H*U または A = L*L^H の三角行列UまたはL.
[in]ANormエルミート行列Aの1ノルム(または無限ノルム). (ANorm >= 0)
[out]RCond行列Aの条件数の逆数. 次のように計算する.
  RCond = 1/(ANorm * Ainvnm)
ここで, Ainvnmは本ルーチン内で求められたinv(A)の1-ノルムの推定値である.
[out]Info= 0: 正常終了.
= -1: パラメータ Uplo の誤り. (Uplo <> "U"および"L")
= -2: パラメータ N の誤り. (N < 0)
= -3: パラメータ A() の誤り.
= -4: パラメータ ANorm の誤り. (ANorm < 0)
出典
LAPACK
使用例
Zposvの使用例を参照せよ.