jordan

Jordan canonical form of a matrix.

Category: Mathematics > Linear Algebra

Syntax

J = jordan(A)

Returns the Jordan form of A.

[V, J] = jordan(A)

Also returns the generalized eigenvector matrix V with V\A*V == J.

Description

Every square matrix is similar to a Jordan form. When A is diagonalizable, J is diagonal; a larger Jordan block signals a repeated eigenvalue without enough independent eigenvectors, as in [1 1; 0 1]. The computation is exact and depends on the eigenvalues being found in closed form.

Input arguments

A
Square matrix, numeric or symbolic; exact entries work best.

Output arguments

J
Block diagonal matrix: each block has an eigenvalue on its diagonal and ones just above it.
V
Invertible matrix whose columns are the generalized eigenvectors.

Example

A single Jordan block

A = sym([2 1; 0 2]);
J = jordan(A)
[V, J2] = jordan(sym([1 1; 0 1]));
J2
Output
J = 
[2, 1]
[0, 2]
J2 = 
[1, 1]
[0, 1]

See also

eig charpoly expm null