ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

fzmult

基本ゼロ空間基底を用いた乗算

構文

W = fzmult(A,V)
W = fzmult(A,V,'transpose')
[W,L,U,pcol,P] = fzmult(A,V)
W = fzmult(A,V,transpose,L,U,pcol,P)

説明

W = fzmult(A,V) は行列 Z と行列 V の積 W、すなわち W = Z*V を計算します。ここで Z は行列 A のヌル空間に対応する基本基底です。Am < nrank(A) = mrank(A(1:m,1:m)) = m であるような mn 列のスパース行列でなければなりません。V は、p = n-m であるような pq 列の行列でなければなりません。V がスパース行列ある場合は W はスパース行列になり、そうでない場合は W は非スパース行列になります。

W = fzmult(A,V,'transpose') は、基本基底の転置と V の積、すなわち W = Z'*V を計算します。V は、q = n-m であるような pq 列の行列でなければなりません。fzmult(A,V)fzmult(A,V,[]) と同じ結果になります。

[W,L,U,pcol,P] = fzmult(A,V) は、行列 A(1:m,1:m) の LU 分解スパース行列を出力します。すなわち、A1 = A(1:m,1:m) かつ P*A1(:,pcol) = L*U です。

W = fzmult(A,V,transpose,L,U,pcol,P) は、行列 A(1:m,1:m) のあらかじめ計算されたスパース LU 分解を使用します。すなわち、A1 = A(1:m,1:m) かつ P*A1(:,pcol) = L*U です。transpose'transpose' または [] のいずれかです。

ゼロ空間基底行列 Z は陽的には作成されません。行列 A(1:m,1:m) の LU 分解スパース行列に基づく陰的表現が使用されます。

この情報は役に立ちましたか?