|
D.3.2.17 jordan
Procedure from library linalg.lib (see linalg_lib).
- Usage:
- jordan(M[,opt]); M constant square matrix, opt integer
- Assume:
- The eigenvalues of M are in the coefficient field.
- Return:
- The procedure returns a list jd with 3 entries:
| - jd[1] ideal, eigenvalues of M,
- jd[2] list of intvecs, jd[2][i][j] size of j-th Jordan block with
eigenvalue jd[1][i], and
- jd[3] a matrix, jd[3]^(-1)*M*jd[3] in Jordan normal form.
Depending on opt, only certain entries of jd are computed.
If opt=-1, jd[1] is computed,
if opt= 0, jd[1] and jd[2] are computed,
if opt= 1, jd[1], jd[2], and jd[3] are computed, and,
if opt= 2, jd[1] and jd[3] are computed.
By default, opt=0.
|
- Note:
- A non constant polynomial matrix M is replaced by its constant part.
- Display:
- The procedure displays comments if printlevel>=1.
Example:
| LIB "linalg.lib";
ring R=0,x,dp;
matrix M[3][3]=3,2,1,0,2,1,0,0,3;
print(M);
jordan(M);
|
|