今度は正方行列
(ただし
のスペクトル半径
は
より小さいとする) の等比級数
以下の実験は前節の続きで行うことを想定している。 Octave を終了してしまっている場合は、
| この節の実験に先立ち必要なこと | ||||||||||
|
Neumann 級数の部分和
| neumann.m |
1 % neumann.m --- 行列の Neumann 級数 (等比級数) の第 N 部分和
2 function s = neumann(a,N)
3 [m,n] = size(a);
4 if m != n
5 disp("aが正方行列でない!");
6 return
7 endif
8 % 第 0 項 S_0 = I
9 s = eye(n,n);
10 % 第 1 項 S_1 = I + a
11 t = a; s = s + t;
12 % 第 2〜N 項まで加える (t が a^n になるようにしてある)
13 for k=2:N
14 t = t * a;
15 s = s + t;
16 end
|
これを ~re00018/neumann.m から、 Octave を実行するディレクトリィにコピーしよう。
| こうしてコピーする | ||
|
|
Neumann 級数の (部分) 和
に
をかけた結果が単位行列に非常に近いことが分かる。
種明かしをすると、