Repeated Poles

The above summary of state-space diagonalization works as stated when the modes (poles) of the system are distinct. When there are two or more resonant modes corresponding to the same ``natural frequency'' (eigenvalue of $ A$), then there are two further subcases: If the eigenvectors corresponding to the repeated eigenvalue (pole) are linearly independent, then the modes are independent and can be treated as distinct (the system can be diagonalized). Otherwise, we say the equal modes are coupled.

The coupled-repeated-poles situation is detected when the matrix of eigenvectors V returned by the eig matlab function [e.g., by saying [V,D] = eig(A)] turns out to be singular. Singularity of V can be defined as when its condition number [cond(V)] exceeds some threshold, such as 1E7. In this case, the linearly dependent eigenvectors can be replaced by so-called generalized eigenvectors [58]. Use of that similarity transformation then produces a ``block diagonalized'' system instead of a diagonalized system, and one of the blocks along the diagonal will be a $ k\times k$ matrix corresponding to the pole repeated $ k$ times.

Connecting with the discussion regarding repeated poles in §6.8.5, the $ k\times k$ Jordan block corresponding to a pole repeated $ k$ times plays exactly the same role of repeated poles encountered in a partial-fraction expansion, giving rise to terms in the impulse response proportional to $ n\lambda ^n$, $ n^2\lambda ^n$, and so on, up to $ n^{k-1}\lambda ^n$, where $ \lambda$ denotes the repeated pole itself (i.e., the repeated eigenvalue of the state-transition matrix $ A$).

Jordan Canonical Form

The block diagonal system having the eigenvalues along the diagonal and ones in some of the superdiagonal elements (which serve to couple repeated eigenvalues) is called Jordan canonical form. Each block size corresponds to the multiplicity of the repeated pole. As an example, a pole $ p_i$ of multiplicity $ m_i=3$ could give rise to the following $ 3\times 3$ Jordan block:

$\displaystyle D_i = \left[\begin{array}{ccc}
p_i & 1 & 0\\ [2pt]
0 & p_i & 1\\ [2pt]
0 & 0 & p_i
\end{array}\right]
$

The ones along the superdiagonal serve to couple the states corresponding to $ p_i$ and generate polynomial amplitude envelopes multiplying the sampled exponential $ p_i^n$.G.11Note, however, that a pole of multiplicity three can also yield two Jordan blocks, such as

$\displaystyle D_i = \left[\begin{array}{ccc}
p_i & 1 & 0\\ [2pt]
0 & p_i & 0\\ [2pt]
0 & 0 & p_i
\end{array}\right]
$

or even three Jordan blocks of order 1. The number of Jordan blocks associated with a single pole $ p_i$ is equal to the number of linearly independent eigenvectors of the transition matrix associated with eigenvalue $ p_i$. If all eigenvectors of $ A$ are linearly independent, the system can be diagonalized after all, and any repeated roots are ``uncoupled'' and behave like non-repeated roots (no polynomial amplitude envelopes).

Interestingly, neither Matlab nor Octave seem to have a numerical function for computing the Jordan canonical form of a matrix. Matlab will try to do it symbolically when the matrix entries are given as exact rational numbers (ratios of integers) by the jordan function, which requires the Maple symbolic mathematics toolbox. Numerically, it is generally difficult to distinguish between poles that are repeated exactly, and poles that are merely close together. The residuez function sets a numerical threshold below which poles are treated as repeated.


Next Section:
State-Space Analysis Example: The Digital Waveguide Oscillator
Previous Section:
Modal Representation