 
 
 
6.57.4  Matrice de Jordan rationnelle : rat_jordan
rat_jordan a comme argument une matrice A d’ordre n à 
coefficients rationnels.
rat_jordan renvoie :
- 
en mode Xcas, Mupad ou TI
 une séquencee composée de deux matrices : une matrice 
de changement de base P, suivie de la matrice de Jordan J associée à 
A si celle-ci est rationnelle ou de la matrice dont les blocs de Jordan sont 
remplacés par les matrices compagnons associées au facteur non 
rationnellement reductible du polynôme caractéristique de A (c’est la 
matrice la plus reduite à coefficient dans le corps de A, ou le corps 
complexifié de A si on est en mode complexe).
 
- en mode Maple
 la matrice de Jordan J associée à A si celle-ci est rationnelle ou de
la matrice dont les blocs de Jordan sont remplacés par les matrices compagnons
associées au facteur non rationnellement reductible du polynôme 
caractéristique de A. On peut cependant obtenir la matrice de changement de
base P, dans une variable passée en second argument, par exemple rat_jordan([[1,0,0],[1,2,-1],[0,0,1]],’P’)
 
On a :
J=P−1AP avec J est à coefficients rationnels.
Remarques
- 
La syntaxe Maple est aussi valable dans les autres modes, par 
exemple, en mode Xcas, on tape :
 rat_jordan([[4,1,1],[1,4,1],[1,1,4]],’P’) On obtient : [[1,-1,1/2],[1,0,-1],[1,1,1/2]] puis P renvoie : [[6,0,0],[0,3,0],[0,0,3]] ,
- Les coefficients de P et de J appartiennent au corps des 
coefficients de A.
 Par exemple, en mode Xcas, on tape : rat_jordan([[1,0,1],[0,2,-1],[1,-1,1]]) On obtient : [[1,1,2],[0,0,-1],[0,1,2]],[[0,0,-1],[1,0,-3],[0,1,4]] On tape (on met -pcar(...) car l’argument de companion doit être un polynôme unitaire (cf 6.57.11)companion(-pcar([[1,0,1],[0,2,-1],[1,-1,1]],x),x) On obtient : [[0,0,-1],[1,0,-3],[0,1,4]] On tape : rat_jordan([[1,0,0],[0,1,1],[1,1,-1]]) On obtient : [[-1,0,0],[1,1,1],[0,0,1]],[[1,0,0],[0,0,2],[0,1,0]] On tape : factor(pcar([[1,0,0],[0,1,1],[1,1,-1]],x)) On obtient : -(x-1)*(x^2-2)
 On tape : companion((x^2-2),x)
 On obtient : [[0,2],[1,0]] 
- Lorsque A est symétrique et a des valeurs propres d’ordre multiple,
Xcas renvoie des vecteurs propres orthogonaux mais pas forcément 
normés i.e. tran(P)*P est une matrice diagonale de diagonale le carré
de la norme des vecteurs propres.
 On tape :rat_jordan([[4,1,1],[1,4,1],[1,1,4]]) On obtient :[[1,-1,1/2],[1,0,-1],[1,1,1/2]],[[6,0,0],[0,3,0],[0,0,3]] 
On tape en mode Xcas, Mupad et TI:
rat_jordan([[1,0,0],[1,2,-1],[0,0,1]])
On obtient :
[[0,1,0],[1,0,1],[0,1,1]],[[2,0,0],[0,1,0],[0,0,1]] 
On tape en mode Xcas, Mupad et TI:
rat_jordan([[4,1,-2],[1,2,-1],[2,1,0]])
On obtient :
[[[1,2,1],[0,1,0],[1,2,0]],[[2,1,0],[0,2,1],[0,0,2]]]
En mode complexe et en mode Xcas, Mupad et TI, on tape :
rat_jordan([[2,0,0],[0,2,-1],[2,1,2]])
On obtient :
[[1,0,0],[-2,-1,-1],[0,-i,i]],[[2,0,0],[0,2-i,0],[0,0,2+i]]
On tape en mode Maple :
rat_jordan([[1,0,0],[1,2,-1],[0,0,1]],’P’)
On obtient :
[[2,0,0],[0,1,0],[0,0,1]]
puis on tape :
P)
On obtient :
[[0,1,0],[1,0,1],[0,1,1]]
 
 
