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 ), 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 matrix corresponding
to the pole repeated
times.
Connecting with the discussion regarding repeated poles in
§6.8.5, the Jordan block corresponding to a pole
repeated
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
,
, and so
on, up to
, where
denotes the repeated pole
itself (i.e., the repeated eigenvalue of the state-transition matrix
).
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 of multiplicity
could give
rise to the following
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]
$](http://www.dsprelated.com/josimages_new/filters/img2223.png)


![$\displaystyle D_i = \left[\begin{array}{ccc}
p_i & 1 & 0\\ [2pt]
0 & p_i & 0\\ [2pt]
0 & 0 & p_i
\end{array}\right]
$](http://www.dsprelated.com/josimages_new/filters/img2236.png)



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