Exo24.mw

> restart;with(linalg);

Warning, the protected names norm and trace have been redefined and unprotected

[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...

>

>

> Exercice 24

>

question a)

> A:=matrix([[1,1,0],[0,4,1],[4,0,4]]);

A := matrix([[1, 1, 0], [0, 4, 1], [4, 0, 4]])

> P:=matrix([[1,1,-1],[4,1,0],[4,-2,1]]);

P := matrix([[1, 1, -1], [4, 1, 0], [4, -2, 1]])

> Grang(P);

L[2],

L[3],

L[2],

L[3],

L[3],

Donc rang(P)=3, P est donc inversible, calculons son inverse.

Méthode 1: A l'aide du système associé

> Gsyst_cramer(P,[x,y,z],[a,b,c]);

L[2],

L[3],

L[2],

L[3],

L[3],

L[1],

L[2],

L[1],

Méthode 2: A l'aide des opérations élémentaires issues du pivot de Gauss appliqué à la matrice Identité

> Ginverse(P);

matrix([[1, 1, -1], [4, 1, 0], [4, -2, 1]]),

matrix([[1, 1, -1], [0, -3, 4], [4, -2, 1]]), L[2],

matrix([[1, 1, -1], [0, -3, 4], [0, -6, 5]]), L[3],

matrix([[1, 1, -1], [0, 1, (-4)/3], [0, -6, 5]]), L[2],

matrix([[1, 1, -1], [0, 1, (-4)/3], [0, 0, -3]]), L[3],

matrix([[1, 1, -1], [0, 1, (-4)/3], [0, 0, 1]]), L[3],

matrix([[1, 1, 0], [0, 1, (-4)/3], [0, 0, 1]]), L[1],

matrix([[1, 1, 0], [0, 1, 0], [0, 0, 1]]), L[2],

matrix([[1, 0, 0], [0, 1, 0], [0, 0, 1]]), L[1],

> inv_P:=inverse(P);

inv_P := matrix([[1/9, 1/9, 1/9], [(-4)/9, 5/9, (-4)/9], [(-4)/3, 2/3, (-1)/3]])

question b) et c)

>

> inv_PAP=evalm(inv_P&*A&*P);

inv_PAP = matrix([[5, 0, 0], [0, 2, 1], [0, 0, 2]])

C'est en fait la matrice B associée à l'application canoniquement associée à A, relativement à la base (e1, e2, e3) formée des colonnes de P

> B:=evalm(inv_P&*A&*P);

B := matrix([[5, 0, 0], [0, 2, 1], [0, 0, 2]])

>

> question d)

> J:=matrix([[5,0,0],[0,2,0],[0,0,2]]);

J := matrix([[5, 0, 0], [0, 2, 0], [0, 0, 2]])

> K:=matrix([[0,0,0],[0,0,1],[0,0,0]]);

K := matrix([[0, 0, 0], [0, 0, 1], [0, 0, 0]])

> JK:=evalm(J&*K);

JK := matrix([[0, 0, 0], [0, 0, 2], [0, 0, 0]])

> KJ:=evalm(K&*J);

KJ := matrix([[0, 0, 0], [0, 0, 2], [0, 0, 0]])

> evalm(K^2);

matrix([[0, 0, 0], [0, 0, 0], [0, 0, 0]])

et donc pour tout n>1 K^n=0

> evalm(J^2);evalm(J^3);

matrix([[25, 0, 0], [0, 4, 0], [0, 0, 4]])

matrix([[125, 0, 0], [0, 8, 0], [0, 0, 8]])

et par récurrence pour tout entier n, J^n=diag(5^n,2^n,2^n)

>

>

Ainsi K et J commutent on peut appliquer la formule de Newton

> B^n=(K+J)^n,"=",Sum(Cn^p*K^p*J^(n-p),p=0..n),"=",J^n+n*K*J^(n-1);

B^n = (K+J)^n,

> Bn:=evalm(diagonale([[5^n,2^n,2^n]])+K&*diagonale([[n*5^(n-1),n*2^(n-1),n*2^(n-1)]])):

> B^n=evalm(Bn);

B^n = matrix([[5^n, 0, 0], [0, 2^n, n*2^(n-1)], [0, 0, 2^n]])

Or ('P'*'B'*inv_P)^n='P'*'B'^n*inv_P; d'où

(P*B*inv_P)^n = P*B^n*inv_P

> An:=evalm(P&*B(n)&*inv_P):A^n=evalm(An);

A^n = matrix([[1/9*5^n+8/9*2^n-4/3*n*2^(n-1), 1/9*5^n-1/9*2^n+2/3*n*2^(n-1), 1/9*5^n-1/9*2^n-1/3*n*2^(n-1)], [4/9*5^n-4/9*2^n-4/3*n*2^(n-1), 4/9*5^n+5/9*2^n+2/3*n*2^(n-1), 4/9*5^n-4/9*2^n-1/3*n*2^(n-1...

>