Anvendelser af diagonaliseringsteorien
| > | restart; |
Opsætning (kan overspringes)
| > | with(LinearAlgebra): |
| > | with(plots):with(plottools): |
| > | viz:=(v,c)->arrow([0,0,0],v,0.05,0.1,0.1, color=c); |
| (1.1) |
| > |
Fibonaccital
| > | A:=Matrix([[ 1 , 1 ],
[ 1 , 0 ]]); |
| (2.1) |
| > | seq(A^n,n=1..15); |
| (2.2) |
| > | seq(<1|0>.A^n.<1,0>,n=1..15); |
| (2.3) |
| > | seq(evalf((5+sqrt(5))/10*((1+sqrt(5))/2)^n,7),n=1..15); |
| (2.4) |
| > | (L,T):=Eigenvectors(A); |
![]() |
(2.5) |
| > | S:=T^(-1); |
![]() |
(2.6) |
| > | DD:=DiagonalMatrix(L); |
![]() |
(2.7) |
| > | S^(-1).DD.S; |
| (2.8) |
| > | simplify(%); |
| (2.9) |
| > | seq(simplify(<1|0>.S^(-1).DD^n.S.<1,0>),n=1..15); |
| (2.10) |
| > | simplify(<1|0>.S^(-1).DD^n.S.<1,0>); |
![]() |
(2.11) |
| > | simplify(<1|0>.S^(-1).DiagonalMatrix([L[1]^n,L[2]^n]).S.<1,0>); |
| (2.12) |
| > |
| (2.13) |
Befolkningsflytning
Lad os kigge på afbildningen hørende til
| > | B:=<<85/100,15/100>|<10/100, 90/100>>; |
| > |
![]() |
(3.1) |
| > |
,
=Andel byboere efter n år .
Flytningens forløb:
| > | <l[n+1], b[n+1]> = B.<l[n], b[n]>; |
![]() |
(3.2) |
| > | seq(evalf(B^n.<1,0>),n=0..20); |
| (3.3) |
| > | seq(evalf(B^n.<0,1>),n=0..20); |
| (3.4) |
| > | display([seq(display([viz(DiagonalMatrix([B^n,1]).<1,0,0>,red),viz(DiagonalMatrix([B^n,1]).<0,1,0>,green), viz(DiagonalMatrix([B^n,1]).<1/2,1/2,0>,yellow) ]),n=0..20)],insequence=true,scaling=constrained,axes=normal); |
![]() |
| > |
| > | (L,T):=Eigenvectors(B); |
![]() |
(3.5) |
| > | s:=T^(-1); |
![]() |
(3.6) |
| > | simplify(s^(-1).DiagonalMatrix(L).s); |
![]() |
(3.7) |
| > | simplify(s^(-1).DiagonalMatrix(L)^n.s.<1,0>); |
![]() |
(3.8) |
| > | simplify(T.DiagonalMatrix([L[1]^n,L[2]^n]).T^(-1).<1,0>); |
![]() |
(3.9) |
| > | limit(%[1],n=infinity); |
| (3.10) |
| > |
| > |
| > |
| > |
| > |