<< range Kernel Linear Equations >>

Scilab Help >> Linear Algebra > Kernel > rowcomp

rowcomp

行圧縮, 範囲

呼び出し手順

[W,rk]=rowcomp(A [,flag [,tol]])

引数

A

実数または複素数の行列

flag

オプションの文字列, 指定可能な値は 'svd' または 'qr'です. デフォルト値 'svd'はです.

tol

オプションの非負の実数. デフォルト値は sqrt(%eps)*norm(A,1).

W

正方正則行列 (基底の変更)

rk

整数 (Aのランク)

説明

Aの行圧縮. Ac = W*A は行圧縮された行列です: すなわち, Afを行フルランクとして Ac=[Af;0] となります.

flag および tol はオプションのパラメータです: flag='qr' または 'svd' (デフォルト 'svd').

tol は許容誤差パラメータです.

W'の最初のrk 列には, Aの範囲が広がります.

Wの最初の(上側の)rk 行には, Aの行範囲が広がります.

非ゼロベクトル x は, W*xAcに基づき行圧縮された場合, すなわち,その最後の要素のノルムが最初の要素に対して小さい場合に限り, range(A)に属します.

A=rand(5,2)*rand(2,4);              // 4 列ベクトル, 2 つは独立.
[X,dim]=rowcomp(A);Xp=X';
svd([Xp(:,1:dim),A])                //span(A) = span(Xp(:,1:dim)
x=A*rand(4,1);                      //x は span(A)に属します
y=X*x
norm(y(dim+1:$))/norm(y(1:dim))     // 小さい

参照

使用される関数

rowcomp 関数はsvd または qr 分解d.


Report an issue
<< range Kernel Linear Equations >>