ドキュメンテーション

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

構文

Z = null(A)
Z = null(A,'r')

説明

Z = null(A) は、特異値分解から得られる A のヌル空間の直交基底になります。これは、A*Z が非常に小さい要素をもつ場合、size(Z,2) は、A の退化次数を示すものになります。そして、Z'*Z = I です。

Z = null(A,'r') は、行の縮小過程から得られるヌル空間の "合理的な" 基底になります。A*Z はゼロで、size(Z,2)A の退化次数の推定になります。A が整数要素の小さな行列の場合、行の縮小過程の要素 (rref を使用して計算) は、小さな整数比になります。

直交基底は、数値的に適切であり、一方で "合理的な" 基底は教育的に適切なものになる可能性があります。

例 1

行列 A のヌル空間の直交基底を計算します。

A = [1     2     3
     1     2     3
     1     2     3];

Z = null(A);
A*Z

ans =
  1.0e-015 *
     0.2220    0.2220
     0.2220    0.2220
     0.2220    0.2220

Z'*Z

ans =
    1.0000   -0.0000
   -0.0000    1.0000

例 2

行列 A*Z の 1 ノルムを計算し、許容誤差が小さいことを確認します。

norm(A*Z,1) < 1e-12
ans =
    1

例 3

同じ行列 A のヌル空間の合理的な基底を計算します。

ZR = null(A,'r')

ZR =
    -2    -3
     1     0
     0     1

A*ZR

ans =

     0     0
     0     0
     0     0

参考

| | |

R2006a より前に導入

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