-
Avec un seul argument ou comme deuxième argument 0, les calculs sont
exacts.
On tape :
hessenberg([[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1], [2,-1,-1,3,1],[2,-1,1,1,2]])
ou
hessenberg([[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1], [2,-1,-1,3,1],[2,-1,1,1,2]],0)
On obtient :
⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 1 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 0 |
0 | 1 | 1 | 0 | 0 |
0 | 1 | 1/2 | 1/4 | 1 |
0 | 1 | 1 | 1 | 0 |
|
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ | ,
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 3 | 8 | 5 | 5/2 | 2 |
2 | 1 | 1/2 | (−5)/4 | −1 |
0 | 2 | 1 | 2 | 0 |
0 | 0 | 2 | 3/2 | 2 |
0 | 0 | 0 | 13/8 | 7/2 |
|
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ | ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
On a en effet si :
A:=[[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1],
[2,-1,-1,3,1],[2,-1,1,1,2]]
P,B:= hessenberg(A,0)
pcar(A)=pcar(B)=[1,-10,13,71,-50,-113]
inv(P)*A*P est égal à B - Avec comme deuxième argument -1, les calculs sont approchés et la
matrice B est triangulaire.
On tape :
hessenberg([[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1], [2,-1,-1,3,1],[2,-1,1,1,2]],-1)
On obtient (on donne le résultat avec 2 digits) :
⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 0.73 | −0.057 | −0.42 | −0.17 | −0.51 |
0.25 | −0.53 | 0.72 | −0.38 | −0.048 |
0.35 | −0.44 | −0.3 | 0.19 | 0.74 |
0.34 | 0.68 | 0.17 | −0.46 | 0.43 |
0.41 | 0.25 | 0.44 | 0.76 | −0.063 |
|
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
|
,
|
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 6.7 | 8.7e−15 | −2e−13 | 2.7e−14 | −1.4e−13 |
0.0 | 4.6 | 0 | 0 | 0 |
0.0 | 0.0 | −1.9 | 0 | 0 |
0.0 | 0.0 | 0.0 | 1.7 | 0 |
0.0 | 0.0 | 0.0 | −0.0 | −1.2 |
|
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
On a en effet si :
A:=[[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1],
[2,-1,-1,3,1],[2,-1,1,1,2]]
P,B:= hessenberg(A,-1)
inv(P)*A*P est égal à B en calcul numérique.
Remarque
hessenberg(A,-1) est identique à SCHUR(A) qui est une commande
Xcas compatible avec les calculatrices HP. - Avec comme deuxième argument -2, les calculs sont approchés et la
matrice P est orthogonale et la matrice B a ses
coefficients sous-sous-diagonaux nuls.
On tape :
hessenberg([[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1], [2,-1,-1,3,1],[2,-1,1,1,2]],-2)
On obtient (on donne le résultat avec 2 digits) :
⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 1 | 0 | 0 | 0 | 0 |
0 | 0.5 | −0.75 | 0 | −0.43 |
0 | 0.5 | 0.45 | −0.71 | −0.21 |
0 | 0.5 | −0.15 | 0 | 0.85 |
0 | 0.5 | 0.45 | 0.71 | −0.21 |
|
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
|
,
|
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 3.0 | 4 | 0.0 | 1.6e−14 | 5.4e−14 |
4 | 2.2 | 0.83 | 0.0 | 0.0 |
0 | 0.83 | 0.75 | 1.7 | −1.4e−14 |
0 | 0 | 1.7 | 0.5 | 2 |
0 | 0 | 0 | 2 | 3.5 |
|
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |
On a en effet si :
A:=[[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1],
[2,-1,-1,3,1],[2,-1,1,1,2]]
P,B:= hessenberg(A,-2)
inv(P)*A*P est égal à B et inv(P) est égal à tr(P) en calcul numérique.
- Avec comme deuxième argument n>1 et n premier, les calculs sont modulo n et la
matrice B est triangulaire.
On tape :
hessenberg([[3,2,2,2,2],[2,1,2,-1,-1],[2,2,1,-1,1], [2,-1,-1,3,1],[2,-1,1,1,2]],13)
On obtient
⎡
⎢
⎢
⎢
⎢
⎢
⎣ | ⎡
⎢
⎢
⎢
⎢
⎢
⎣ |
| 1 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 0 |
0 | −12 | 1 | 0 | 0 |
0 | 66 | −6 | 1 | 0 |
0 | 131 | −12 | 4 | 1 |
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ | ,
| ⎡
⎢
⎢
⎢
⎢
⎢
⎣ | 3 | −5 | −8 | 10 | 2 |
2 | 1 | 7 | −5 | −1 |
0 | 2 | 1 | −5 | −11 |
0 | 0 | 7 | −5 | −12 |
0 | 0 | 0 | 0 | 10 |
| ⎤
⎥
⎥
⎥
⎥
⎥
⎦ | ⎤
⎥
⎥
⎥
⎥
⎥
⎦ |