実行列バランス化
- 更新日2025-07-30
- 5分で読める
一般行列である入力行列をバランス化して、求められた固有値および固有ベクトルの確度を向上します。入力行列入力にデータを配線して自動的に使用する多態性インスタンスを決定するか、インスタンスを手動で選択します。
「固有値とベクトル」VIを使用して、バランス行列の固有値と固有ベクトルを取得できます。

入力/出力
入力行列
—
入力行列はバランス化を行う実一般行列です。
ジョブ
—
ジョブ行列のバランス操作の種類を指定します。
バランス行列
—
バランス行列は、入力行列と同じ固有値を含みます。
指標 - 低
—
指標 - 低はバランス行列の形式を表します。 i > j かつ 0 ≤ j < index lowならば、Balanced Matrix(i, j) = 0。ジョブを順列もスケールもされていないまたはスケールされているが順列されていないに設定すると、指標 - 低は0に等しくなります。
指標 - 高
—
指標 - 高はバランス行列の形式を表します。 バランス行列(i, j) = i > j かつ index high < i ≤ n - 1 ならば0。ジョブを順列もスケールもされていないまたはスケールされているが順列されていないに設定すると、指標 - 高はn – 1に等しくなります。
エラー
—
エラーは、VIからのエラーまたは警告を返します。エラーは「エラーコードからエラークラスタ」VIに配線して、エラーコードまたは警告をエラークラスタに変換できます。
スケール
—
スケールには置換とスケール係数の詳細が含まれています。 p_jが行の指標と行で置換した列、そして列jとd_jが均衡行および列jに使用されたスケール係数の場合、以下の式はVIがスケールの値を計算する方法を定義します。Scalej =pj for j = 0, 1, ...,ilo - 1,ihi + 1, ..., n - 1 Scalej =dj for j =ilo,ilo + 1, ...,ihi ここで、iloは 低インデックス 、ihiは 高インデックスである。 |
以下の類似変換の1つまたは両方を使用すると、行列Aを均衡して、計算された固有値および固有ベクトルの確度を向上できます。
- 行列Aを置換して、上三角形をブロックします。
- 行列A'をスケールして、行列A'22のノルムを削減します。
行列Aを置換する
以下の表現は、上三角形をブロックするための行列Aの置換を定義します。

ここで、Pは置換行列、A'11およびA'33は上三角形、PTは行列Pの転置です。
A'11およびA'33の対角要素は、Aの固有値です。中央の対角ブロックA'22は、A'の列 (行) の指標 - 低から開始され、列 (行) の指標 - 高で終了します。Aの適切な置換が存在しない場合、以下の条件はTRUEとなります。
- A'22は、Aの全体です。
- 指標 - 低 = 0
- 指標 - 高 = n – 1
行列A'をスケールする
以下の数式は、行列A'22のノルムを削減する行列A'のスケーリングを定義します。

このため、||A"22|| < ||A'22||となり、求められる固有値と固有ベクトルの確度に影響する丸め誤差を削減します。
以下のブロックダイアグラムは「行列バランス化」VIおよび「固有ベクトル変換」VIを使用して、行列Aの固有値および固有ベクトルを計算するVIを示します。

入力行列
—
ジョブ
—
バランス行列
—
指標 - 低
—
スケール
—