7.2 またある晩のこと

あれから何年経ったのか?必要があって、久しぶりに Octave に触る。
eigen_square4.m
% eigen_square4.m
% 2009/12/30 Octave で動かす。
function retval = eigen_square3(n)
  h = 1/n;
  B=sparse(diag(ones(n-2,1),1)+diag(ones(n-2,1),-1));
  I=speye(n-1,n-1);
  A = - n * n * (- 4 * kron(I,I) + kron(B,I) + kron(I,B));
  retval = eig(A);

Intel Pentium M 1.2GHz, 1GB RAM というかなり古いマシン (2005年度購入) したところ、次のような結果になった。

10 0.09375s
20 0.28125s
40 9.75000s
60 112.438s
80 667.938s

ちなみに同じコンピューターで eigen_square.m を動かすと、 次のようになる。

10 0.01563s
20 0.2344s
40 9.891s
60 112.8s
80 818.8s

あれれ?あまり変わらない。連立1次方程式と違って、 固有値の方は sparse でやる強みがない?

桂田 祐史
2017-06-19