Spomky Le 06/10/2002 à 18:18Edité par Boo le 06/10/2002 à 18:20 essaie de calculer A^n avec A=[[2,2,1][2,2,1][1,1,5]] (par exemple).
ca mettra un certain temps si n est élevé.
diagonaliser cette matrice revient a l'ecrire sous la forme [[L1,0,0][0,L2,0][0,0,L3]] avec L1,L2,L3 les valeurs propres de la matrice
Pour obtenir les valeurs propres d'une matrice tu fait diag(zeros(det(A-L*Identity(3)),l))
Dans mon exemple ca donne A'=[[6,0,0][0,3,0][0,0,0]] (ou [[0,0,0][0,3,0][0,0,6]])
Pour calculer les matrices de passage il faut trouver l'espace propre aux valeurs propres de la matrice en resolvant
A*[[x][y][z]] = L1*[[x][y][z]]
A*[[x][y][z]] = L2*[[x][y][z]]
A*[[x][y][z]] = L3*[[x][y][z]]
toujours dans mon exemple P=[[1,1,1][1,1,-1][2,-1,0]]
pour l'inverse de P tu tape sur ta TI P^-1 soit P^-1=[[1/6,1/6,1/3][1/3,1/3,-1/3][1/2,-1/2,0]]
Sachant que A'=P^-1*A*P, A=P*A'*P^-1
donc A^n=P*A'*P^-1*P*A'*P^-1*P*A'*P^-1*....*P*A'*P^-1
or P^-1*P = Identity(3)
d'ou A^n=P*A'^n*P^-1
comme calculer A'^n est très rapide ([[6,0,0][0,3,0][0,0,0]]^n=[[6^n,0,0][0,3^n,0][0,0,0]]) calculer A^n devient alors tres simple