JordanCanonicalForm - crowlogic/arb4j GitHub Wiki

Jordan Canonical Form

Definition

For a given square matrix $A$ of size $n \times n$, the Jordan Canonical Form $J$ is a block diagonal matrix to which $A$ is similar. It's represented as:

J = P^{-1}AP

where $P$ is an invertible matrix whose columns are the generalized eigenvectors of $A$. The invertibility of $P$ underscores that the Jordan Canonical Form is unique up to similarity.

Jordan Blocks

A Jordan block $J(\lambda)$ for an eigenvalue $\lambda$ is a matrix of the form:

J(\lambda) = \begin{pmatrix}
\lambda & 1 & 0 & \cdots & 0 \\
0 & \lambda & 1 & \cdots & 0 \\
0 & 0 & \lambda & \cdots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \cdots & \lambda 
\end{pmatrix}

Each block corresponds to an eigenvalue $\lambda$ of $A$. The size of the block is determined by the number of linearly independent generalized eigenvectors associated with $\lambda$. It's important to note that the ones on the superdiagonal are the only non-zero off-diagonal entries, defining the structure of the Jordan blocks.

Computing Jordan Canonical Form

  1. Find Eigenvalues: Solve $\text{det}(A - \lambda I) = 0$ to find eigenvalues $\lambda$.
  2. Generalized Eigenvectors: For each eigenvalue $\lambda$, find the generalized eigenvectors. This involves solving $(A - \lambda I)^k v = 0$ for various values of $k$ until a sufficient number of linearly independent vectors are found.
  3. Construct $P$ and $J$: Arrange the generalized eigenvectors in $P$ and form the corresponding Jordan blocks to construct $J$.

Properties

  • Not Always Diagonalizable: If all Jordan blocks are $1 \times 1$, then $A$ is diagonalizable.
  • Sensitivity: Computing the exact Jordan form is sensitive to perturbations in $A$.

Applications

Used in solving systems of linear differential equations, understanding the structure of linear transformations, and more.