Main Content

condest

1 ノルム条件数の計算

構文

c = condest(A)
c = condest(A,t)
[c,v] = condest(A)

説明

c = condest(A) は、正方行列 A の 1 ノルムの条件数に関する下限 c を計算します。

c = condest(A,t) では、基となる反復行列の列数に等しい正の整数パラメーター t を変更できます。列の数を増やすと一般に、条件推定の精度は高まりますが、計算コストが増大します。既定の設定は t = 2 で、ほとんど常に因子 2 の範囲内で正確な推定となります。

[c,v] = condest(A) は、ベクトル v も計算します。これは c が大きい場合に近似ヌル ベクトルになります。vnorm(A*v,1) = norm(A,1)*norm(v,1)/c を満たします。

メモ

condestrand を呼び出します。繰り返し可能な結果が必要な場合は、rng を使用して疑似乱数発生器を起動設定に設定してから condest を使用します。

rng('default')

ヒント

この関数は、スパース行列に対して特に有効です。

アルゴリズム

condest は、Hager [1]による 1 ノルム条件数の推定法、および Higham と Tisseur [2]による Hager の推定法のブロック指向による一般化に基づいています。アルゴリズムの中核は、A−1 を計算せずに反復検索によって A11 を推定することです。これは x1=1 に従う凸状ながら微分不可能な最適化問題 maxA1x1 として提起されます。

参照

[1] William W. Hager, “Condition Estimates,” SIAM J. Sci. Stat. Comput. 5, 1984, 311-316, 1984.

[2] Nicholas J. Higham and Françoise Tisseur, “A Block Algorithm for Matrix 1-Norm Estimation with an Application to 1-Norm Pseudospectra, “SIAM J. Matrix Anal. Appl., Vol. 21, 1185-1201, 2000.

拡張機能

バージョン履歴

R2006a より前に導入

参考

| |