CHAPTER 2
PRONY ANALYSIS
Prony analysis has been shown to be a viable technique to model a linear sum of
damped complex exponentials to signals that are uniformly sampled. The Prony analysis
was developed by Gaspard Riche, Baron de Prony in 1795 in order to explain the
expansion of various gases (de Prony 1795, Hildebrand 1974 and Marple 1987). In his
original paper, Prony proposed fitting a sum of exponentials to equally spaced data points
and extended the model to interpolate at intermediate points. The Prony analysis is not
only a signal analysis technique but also a system identification method, which is widely
used in the areas of power system electromechanical oscillation, biomedical monitoring,
radioactive decay, radar, sonar, geophysical sensing and speech processing.
2.1 Comparison Between Fourier Series and Prony Analysis
As compared to other oscillatory signal analysis techniques such as those of
Fourier, Prony analysis has the advantage of estimating damping coefficients apart from
frequency, phase and amplitude. In addition, it best fits a reducedorder model to a high
order system both in time and frequency domains (Marple 1987). Major differences
between Fourier series and Prony analysis are listed in Table 2.1.1.
1
Table 2.1.1 Comparison Between Fourier Series and Prony Analysis
Fourier Series (FS) 
Prony Analysis (PA) 

1. 
FS is a NonParametric method. 
PA is a Parametric method. 
FS fits a sum of undamped complex 
PA fits a sum of damped complex 

2. 
exponentials. 
exponentials. 
Apart from amplitude, phase and 

FS computes amplitude, phase and 

3. 
frequency, PA also computes damping 

frequency of the signal components. 

coefficients of the signal components. 
Fourier series has several drawbacks when it is applied to the timedomain signal
which is corrupted by noise. First, experimental timedomain signals are of finite
duration. Fourier transformation of truncated timedomain signal leads to undesirable
frequencydomain “wiggles” (“Gibbs oscillations”) which make it hard to observe a
small peak in the vicinity of a large peak (Marshall, Verdun 1990). Second, Fourier
transforms distributes timedomain noise uniformly throughout the frequency domain
which leads to limitation in the certainty with which peak frequencies, widths,
magnitudes and phases could be computed. Third, discrete sampling of a timedomain
continuous signal causes limitation in obtaining the spectral information content
(Marshall, Verdun 1990).
The Prony analysis (PA) is known to behave poorly when a signal is embedded in
noise (Marple 1987). It yields parameter estimates with a large bias due to its sensitivity
to measurement noise. It does not make a separate estimate of the noise. It also fits
exponentials to any additive noise present in the signal. When PA is applied to a signal
2
embedded in noise, the damping and frequency terms are typically significantly miss
estimated; they are usually much greater than the actual values (Marple 1987). Besides
poor fit when signal to noise ratio is small, PA is also known to be inconsistent (Kahn et
al 1992).
2.2 Original Prony Analysis
To derive the mathematical formulation for the original Prony analysis, let us
consider a Pulsed Corona Reactor (PCR) as a linear timeinvariant (LTI) dynamic system
as shown in Figure 2.2.1.
Pulsed Corona Reactor (LTI System) x(t)
Figure 2.2.1 Pulsed Corona Reactor LTI System
In Figure 2.2.1, the signals are referred to as follows:
y(t): PCR system response,
x(t): State of the PCR system,
u(t): Input to the PCR system.
The evolution of the state of the PCR system is expressed by (2.2.1):
dx ( t )
dt
=
( )
Ax t
+
( )
Bu t
, where A and B are constant matrices.
(2.2.1)
Suppose that the PCR is brought to an “initial state”
x(t) = x
0 at time t _{0} , by means of
some input pulse (Hauer, Demeure, Scharf 1990). If the input is removed
(u(t) = 0)
and
there are no subsequent inputs to the system, then (2.2.1) can be rewritten as
3
dx t
( )
dt
=
( )
Ax t
.
(2.2.2)
Here A is a matrix of size n × n whose eigenvalues are λ _{i} , right eigenvectors are p _{i} and
left eigenvectors are q _{i} (Kailath 1980). In (2.2.2), system order is represented by n. The
solution to (2.2.2) is expressed as the sum of n components:
( )
x t
=
n
∑
i = 1
(
q
T
i
x
0
)
p e
i
(
λ
i
t
)
.
(2.2.3)
As we have assumed the PCR is an LTI system, we express y(t) in the form
y(t) = Cx(t) + Du(t) , where C and D are constant matrices.
(2.2.4)
If the input is removed (u(t) = 0) , then (2.2.4) simplifies to:
y(t) = Cx(t) .
(2.2.5)
The Prony analysis directly estimates the parameters of the eigen structure described in
(2.2.3) by fitting a sum of complex damped sinusoids to evenly spaced sample (in time)
values of the output:
^ L
(
y t
)
=
∑
i = 1
A e
i
(
σ
i
t )
cos(2
f t
π
i
+
φ
i
) .
(2.2.6)
In (2.2.6), we have utilized the following notations:
A _{i} : Amplitude of component i,
σ : Damping coefficient of component i,
i
φ : Phase of component i,
i
f i
: Frequency of component i,
L: Total number of damped exponential components,
4
^
y ( t ) : Estimate of observed data for y(t) consisting of N samples y(t _{k} ) = y[k],
k=0,1,2,….N1 that are evenly spaced.
Using Euler’s theorem, cos(2
πf t + φ ) can be represented as a sum of exponentials:
i
i
cos(2
f t +
π
i
φ
i
)
=
e
j
(2
π φ
f t
i
+
i
)
+
e
−
j
(2
π φ
f t
i
+
i
)
2
=
e
j
2
f t
π
i
2
e
φ
j
i
+
e
−
j
2
f t
π
i
2
e
−
φ
j
i
.
(2.2.7)
Inserting (2.2.7) in (2.2.6) and letting t = kT, the samples of
where
y k
[
]
=
L
∑
i =
1
C
i
k
i
µ
^
( ) are rewritten as
y t
(2.2.8)
C
i
µ
i
=
=
A
i
2
e
j
ϕ
i
e (σ
i
+ j
f
2π
i
)
T
, which we refer to as the “poles.”
In (2.2.10), T is the sampling period.
(2.2.9)
(2.2.10)
The original Prony analysis computes C _{i} and µ _{i} in three basic steps (Pierre 2002):
• Solve linear prediction model, which is constructed by the observed data set.
First write (2.2.8) as a linear prediction model,
y k
[
]
=
a y k
1
[
−
1]
+
a
2
y k
[
−
2]
+
+
a
L
y k
[
In (2.2.11), y[k] is computed for k = L, L + 1, L + 2,
−
L
]
.
, N −1. For example, y[L] is
computed at k = L :
y L
[
]
=
[
a y L
1
−
1]
+
a
2
y L
[
−
2]
+
+
a
L
y
[0]
.
(2.2.11)
We can write y[k] in matrix form for various values of k as
5
⎡
⎢
⎢
⎢
⎢
⎢
⎢
⎣
⎢
y [ L
[
]
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎦
1] ⎥
y
y
[
L
+ 1]
.
.
N −
or
d = Da
where
d
=
Assuming
]
⎡
⎢
⎢
⎢
⎢
⎢
⎢
⎣
⎢ y [ N −
y L
[
[
y L +
.
.
N > 2L
⎡ [
⎢
⎢
= ⎢
⎢
⎢
⎢
⎣
y
y
L
−
y [ L
[
]
L
+
1]
1]
[ 2]
y N
−
y [ L
−
2]
y [ L
− 1]
y [ L
]
y [ N
−
3]
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎦
1] ⎥
1]
, D =
⎡ y L
⎢
[
⎢
⎢ y L
⎢
⎢
⎢
⎣
y N
[
[
−
]
y L
[
+
−
1]
1]
2]
y L
[
[
y L
−
−
2]
1]
y L
[
]
[
y N
−
3]
y [0]
y [1]
y [2]
y [ N
−
L
−
1]
⎤ ⎡ a ⎤ ⎢
a
⎥ ⎢ a ⎢ ⎢ ⎦ ⎢ ⎣
a
⎥
⎥
⎥
⎥
⎥
⎥
⎦
⎥
⎥ ⎢
1
2
3
L
⎥
⎥
⎥
y
y
y
[0]
[1]
[2]
[
y N − L −
1]
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎦
and a =
(2.2.12)
(2.2.13)
⎡ a ⎤
⎢
a
⎢ a
⎢
⎢
⎥
⎥
⎣
⎦
⎥
⎥
⎥
⎥
1
⎢
⎢
2
3
a
L
.
the linear prediction coefficients vector a is estimated by solving the
overdetermined least square problem, which is computed using (2.2.13)
a = D\d.
(2.2.14)
In MATLAB, a computationally robust way to find a is
a=pinv(D)*d ;
where the pinv function computes the pseudo inverse of D.
• Find roots of characteristic polynomial formed from the linear prediction
coefficients.
µ
L
− a µ −
1
L
−
1
^
^
− a µ− a = µ−µ µ−µ
L
−
1
L
1
2
(
)(
)
(
^
µ−µ
L
) .
(2.2.15)
As vector a is known from (2.2.14), the roots
^
µ
i of the polynomial (2.2.15) can be readily
computed.
6
In MATLAB, the roots
^
µ
can be computed as
muhat=roots([1;a]);
where the vector [1; a ] describes the polynomial to be rooted.
• Solve the original set of linear equations to yield the estimates of the
exponential amplitude and sinusoidal phase.
[0]
y
⎢
⎢
⎢
⎢
⎢
⎢
⎣
⎢ y N −
⎡
[
y
[1]
.
.
1]
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎦
=
⎡
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎣
1
^
1
1
^
µ µ
^
1
2
^
µ µ
1
1
2
2
2
^
µ
N
1
−
1
^
µ
N
2
−
1
or
where
Y = UC
Y
=
⎡
⎢
⎢
⎢
⎢
⎢
⎢
⎣
⎢ y [ N
.
.
y [0]
y
[1]
⎤
⎥
⎥
⎥
⎥
⎥
⎥
−1] ⎥
⎦
, U =
⎡
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎣
1
^
1
µ
^
µ
1
2
1
^
µ
N
1
−
1
1
^
µ
^
µ
1
L
2
L
^
µ
N
L
−
1
^
µ
^
µ
1
2
2
2
^
µ
N
2
−
1
1
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎡ C ⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎦
⎢
⎢
⎢
⎢ C
⎢
⎢
1
⎥ ⎣
⎦
C
2
3
C
L
1
^
µ
^
µ
1
L
2
L
^
µ
N
L
−1
⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎦
and C =
⎡ C ⎤
⎢
⎢
⎢ C
⎢
⎢
⎢
⎣
C
⎥
⎥
⎥
⎥
⎥
⎥
⎦
1
2
3
C
L
.
(2.2.16)
(2.2.17)
In MATLAB, the original linear prediction coefficients C _{i} can be computed by solving
the overdetermined set of equations in (2.2.17).
C = U\Y;
As C and
^
µ
are now known, the amplitude, frequency, phase and damping coefficients
are computed using (2.2.9) and (2.2.10).
7
2.3 Prony Analysis for TimeDomain Design of IIR Filters
In this thesis, we have utilized the MATLAB’s Signal Processing Toolbox builtin
function prony to perform the Prony analysis. The prony function implements the
Prony analysis for timedomain design of IIR filters (Parks, Burrus 1987). It models a
signal using a specified number of poles and zeros (MATLAB Help 2002). The method
uses a variation of the covariance method of autoregressive (AR) modeling to find the
denominator coefficients, the a _{i} , and then finds the numerator coefficients b _{i} for which
the resulting filter's impulse response matches exactly the first (n + 1) samples of the
given data sequence. The filter is not necessarily stable, but this method can potentially
recover the coefficients exactly if the data sequence is truly an autoregressive moving
average (ARMA) process of the correct order (MATLAB Help 2002).
The transfer function of an IIR filter can be written as (Parks, Burrus 1987)
H
(
z
)
=
( B z ) 
b 
0 
+ 
b z 1 − 
1 
+ 
+ 
b M 
z − M 

( A z ) ^{=} 1 
+ 
− a z 1 
1 
+ 
+ 
a N z − 
N 
.
(2.3.1)
H(z) is the ztransform of h[n] and is related by the following equation:
H
z
( )
=
∞
∑
=
n
0
h n z
[
]
− n
.
We can rewrite (2.3.1) as
B(z) = H(z)A(z)
(2.3.2)
Equation (2.3.2) is the ztransform of a discrete time convolution, and it can be written as
a matrix multiplication. Using the first K+1 terms of the impulse response, we can write
(Parks, Burrus 1987)
8
⎡ b ⎤
⎢
⎢
⎢ b
⎢
.
⎢
⎢
⎢
⎢
⎢
⎢ 0
⎢
⎢ ⎢
⎢
⎢
.
.
⎢
⎥
⎥
⎥
⎥ ⎥
2
0
⎥
⎣ ⎢
b 0
1 ⎡ h
h
h
.
.
.
⎢
⎢
⎢
⎢
⎢
⎢
= ⎢
0
1
2
.
⎥
. ⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎥
. ⎥
0 ⎦ ⎥
b
M
⎢
⎢
⎢
⎢
⎢
⎢ ⎣
h
M
h
h
0
1
0
0
h
0
.
.
h
k h
0
⎤
⎥
⎥ ⎡ 1
a
⎥
⎥ ⎢ a
.
.
.
a
⎢
⎢
⎢
⎢
⎢
⎢
⎢
⎢ ⎣
⎥ ⎦
⎥
.
.
. ⎥
⎥
⎥
⎥
⎥
⎥
⎥
K − N
1
2
N
⎤
⎥
⎥ ⎥
⎥
⎥
⎥
⎥
⎥
⎦ ⎥
.
To compute the a _{i} and b _{i} let us partition the matrices as
⎡
⎢
⎢
⎢
⎣
⎡
⎢
⎤
⎥
b
⎤
⎥
⎥
⎥
⎦
H
1
⎡
⎢
⎢
1
−−− = ⎢ −− −− −− ⎥ −−−
0
⎢
⎢
⎢
⎣
h
1
.
.
H
2
⎥
⎥ ⎢
⎣
⎥
⎦
a
⎤
⎥
⎥
⎥
⎦
.
In (2.3.4), we have used the following notations:
b: Column vector of the M+1 numerator coefficients of (2.3.1),
a: Column vector of the N denominator coefficients of (2.3.1),
h _{1} : Column vector of the last KM terms of the impulse response,
H _{1} : (M+1) by (N+1) partition of the matrix in (2.3.3),
H _{2} : (KM) by N partition of the matrix (2.3.3).
The lower KM equations are written as
or
0 =
h 1
h
1
=−
+
H
H a
2
2
a
9
(2.3.3)
(2.3.4)
(2.3.5)
Equation (2.3.5) suggests the solution for a.
The upper M+1 equations of (2.3.4) are written as below to calculate b:
b
=
H a
1
.
(2.3.6)
If K = M+N, H _{2} is square. If H _{2} is not singular, (2.3.5) and (2.3.6) can be solved
respectively for a and b. If H _{2} is singular, (2.3.5) may have many solutions. In that case,
h[n] is most likely generated by a lowerorder system. From this fact, it should become
apparent that the assumed model order could have a significant impact on the Prony
results.
Implementation of MATLAB’s prony function requires that numerator order M
and denominator order N of H(z) in (2.3.1) are known. We have used a userspecified
model order as N and M in the prony function. If numerator order of N of H(z) in (2.3.1)
is specified as zero then the Prony analysis for timedomain design of IIR filters
computes the a vector similar to the a vector computed by the original Prony analysis in
(2.2.15). The original Prony analysis is different from the Prony analysis for time
domain design of IIR filters in the sense that it can’t compute the b vector.
2.4 Modified Prony Analyses
PA is also a numerically intensive algorithm. It involves solution of an over
determined set of linear equations and rooting of a highorder polynomial, which are
numerically intensive operations.
There are several algorithms suggested as Modified Prony algorithms (Li, Liu,
Razavilar 1998). If the damping factors of signal components are small and the peak
signal to noise ratio (SNR) is high, the backward linear prediction algorithm or
10
KumaresanTufts (KT) algorithm (Kumaresan, Tufts 1987) attains the Crame ^{΄} rRao
bound. However, the KT algorithm doesn’t estimate the parameters effectively when the
signals are of lower SNR or large damping factor. Some of the other algorithms which
provide better estimation of signal parameters in the presence of noise are the total least
square (TLS) algorithm (Rahman, Yu 1987), the matrix pensil algorithm (Hua, Sarkar
1990) and the maximum likelihood (ML) algorithm (Bresler, Macovski 1986). Modified
Prony analyses involve the use of forward and backward prediction polynomial zeros,
high prediction orders and singular value decomposition (Holt, Antill 1976) to distinguish
signal roots in the presence of additive noise.
While the version of the Prony Toolbox described in this thesis provides access
only to MATLAB’s builtin prony, extension to modified algorithms should be readily
accomplished, thanks to the modular design of the toolbox.
11
Much more than documents.
Discover everything Scribd has to offer, including books and audiobooks from major publishers.
Cancel anytime.