福西です。
先週、高校生のA君が(2×2の)行列の固有値を求める公式を作ってきたと報告してくれました。(以下代筆です)
ちなみにa+d=tr(A)(トレース)、ad-bc=det(A)(行列式)と表すこともできます。
そして次の週には、行列のn乗を求める公式まで作ってきました。すごい発展だと思います。
一番下の「ただし」のところに、前回の結果が使われています。
この公式では、λ1≠λ2、b≠0を暗に仮定しています。b≠0の条件を外して書き直すとすれば、
(i) Aが対角行列すなわち
A=[a 0]
[0 d] の場合は、
A^n=[a^n 0 ]
[0 d^n]
(ii) Aが対角行列でなく、b≠0の場合は、
(A君が求めた)上記の公式
(iii) Aが対角行列でなく、b=0の場合は、
Aを転置させ、A’=[a d]
[b c]
について、(ii)の公式を適用すると、(A’ )^nが求められる。
((A’ )^nは(A^n)’ なので、非対角成分を逆に見ればA^nが求められる。)
となります。
λ1≠λ2の仮定はまだ外せていませんが、そこを詰めようとすると大学レベルになってしまうので、今は未完成のままでもいいと思います。何にでも公式を作ろうというA君の意欲に感心しました。
ちなみに蛇足ですが、プログラムに書いてA君の公式を確認してみました。
—————————–
% calculation of A^n
clear
n=10;
a=1;
b=2;
c=1;
d=-3;
A=[a b;c d];
lambda1=eig(A)(1:1);
lambda2=eig(A)(2:2);
p1=((lambda1-a)*lambda2^n-(lambda2-a)*lambda1^n)/(lambda1-lambda2);
p2=(b*(lambda1^n-lambda2^n))/(lambda1-lambda2);
p3=-((lambda1-a)*(lambda2-a)*(lambda1^n-lambda2^n))/(b*(lambda1-lambda2));
p4=((lambda1-a)*lambda1^n-(lambda2-a)*lambda2^n)/(lambda1-lambda2);
P=[p1 p2;p3 p4]
C=A^n
———————————–
これを実行すると、
A君の公式(のプログラム)
A^2=
3.0000 -4.0000
-2.0000 11.0000
実際のA^2
3 -4
-2 11
A^10
A君の公式(のプログラム)
A^10=
2.1923e+04 -9.7364e+04
-4.8682e+04 2.1665e+04
実際のA^10
21923 -97364
-48682 216651
と一致しているので、A君の公式が正しいことが確認できました。
授業前にカウンターでやりとりされていた内容がこれなんですね!授業以外の部分でこういうやりとりがかわされるところに Ryoma 先生の数のクラスの奥深さを感じます。T君もA君におおいに刺激を受けているようで、よいことですね。