You are on page 1of 11

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 reduced-order model to a highorder system both in time and frequency domains (Marple 1987). Major differences between Fourier series and Prony analysis are listed in Table 2.1.1.

Table 2.1.1 Comparison Between Fourier Series and Prony Analysis Fourier Series (FS) 1. 2. exponentials. FS computes amplitude, phase and 3. frequency of the signal components. coefficients of the signal components. frequency, PA also computes damping exponentials. Apart from amplitude, phase and FS is a Non-Parametric method. FS fits a sum of undamped complex Prony Analysis (PA) PA is a Parametric method. PA fits a sum of damped complex

Fourier series has several drawbacks when it is applied to the time-domain signal which is corrupted by noise. First, experimental time-domain signals are of finite duration. Fourier transformation of truncated time-domain signal leads to undesirable frequency-domain 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 time-domain 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 time-domain 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

embedded in noise, the damping and frequency terms are typically significantly missestimated; 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 time-invariant (LTI) dynamic system as shown in Figure 2.2.1.

u(t)

Pulsed Corona Reactor (LTI System) x(t)

y(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 ) = Ax(t ) + Bu (t ) , where A and B are constant matrices. dt

(2.2.1)

Suppose that the PCR is brought to an initial state x(t ) = x 0 at time t0, 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

dx(t ) = Ax(t ) . dt

(2.2.2)

Here A is a matrix of size n n whose eigenvalues are i, right eigenvectors are pi and left eigenvectors are qi (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 ) = (qiT x0 ) pi e ( it ) .
i =1

(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. If the input is removed (u (t ) = 0) , then (2.2.4) simplifies to: y (t ) = Cx (t ) . (2.2.5) (2.2.4)

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:
y (t ) = Ai e ( it ) cos(2f i t + i ) .
i =1 ^ L

(2.2.6)

In (2.2.6), we have utilized the following notations: Ai: Amplitude of component i,

i : Damping coefficient of component i, i : Phase of component i,


fi : Frequency of component i, L: Total number of damped exponential components,

y (t ) : Estimate of observed data for y(t) consisting of N samples y(tk) = y[k], k=0,1,2,.N-1 that are evenly spaced. Using Eulers theorem, cos(2f i t + i ) can be represented as a sum of exponentials: cos(2f i t + i ) = e j ( 2f it +i ) + e j ( 2f it +i ) e j 2f it e ji e j 2f it e ji = + . 2 2 2
^

(2.2.7)

Inserting (2.2.7) in (2.2.6) and letting t = kT, the samples of y (t ) are rewritten as y[k ] = C i ik
i =1 L

(2.2.8)

where Ci = Ai ji e 2
i i

(2.2.9) (2.2.10)

i = e ( + j 2f )T , which we refer to as the poles.


In (2.2.10), T is the sampling period. The original Prony analysis computes Ci 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 ] = a1 y[k 1] + a 2 y[k 2] + ...... + a L y[k L] .

(2.2.11)

In (2.2.11), y[k] is computed for k = L, L + 1, L + 2,..., N 1 . For example, y[L] is computed at k = L :


y[ L] = a1 y[ L 1] + a 2 y[ L 2] + ...... + a L y[0] .

We can write y[k] in matrix form for various values of k as

y[ L] y[ L 1] y[ L 2] y[ L + 1] y[ L 1] y[ L] .. = y[ L + 1] y[ L] . .. .. . y[ N 2] y[ N 3] y[ N 1]

.. .. .. .. .. .. .. .. .. ..

a1 a y[1] 2 a3 y[2] .. .. y[ N L 1] a L y[0]

(2.2.12)

or
d = Da

(2.2.13)

where
y[ L] y[ L 1] y[ L 2] y[ L + 1] y[ L] y[ L 1] .. , D = y[ L + 1] d= y[ L] . .. .. . y[ N 2] y[ N 3] y[ N 1]

.. .. .. .. ..

y[0] .. a1 a y[1] .. 2 and a = a3 . y[2] .. .. .. .. a L .. y[ N L 1]

Assuming N > 2 L the linear prediction coefficients vector a is estimated by solving the over-determined least square problem, which is computed using (2.2.13)

a = D\d.
In MATLAB, a computationally robust way to find a is
a=pinv(D)*d ;

(2.2.14)

where the pinv function computes the pseudo inverse of D.

Find roots of characteristic polynomial formed from the linear prediction coefficients.

L a1 L 1 ...... a L 1 a 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.

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.

y[0] 11 y[1] ^ 1 2 .. = ^ 1 . .. . ^ N 1 y[ N 1] 1
or

2 2 2
^ N 1 ^ 2

^1

.. .. .. .. .. .. .. .. .. ..

..

1 C 1 L C 2 ^ 2 L C3 .. .. ^ N 1 L C L
^1

(2.2.16)

Y = UC
where

(2.2.17)

1 y[0] ^1 y[1] 1 ^2 Y = .. , U = 1 . .. . ^ N 1 y[ N 1] 1

2 2 2
^ N 1 ^ 2

^1

.. .. .. .. .. .. .. .. .. ..

..

1 C1 C L 2 ^ 2 and C = C 3 . L .. .. ^ N 1 C L L
^1

In MATLAB, the original linear prediction coefficients Ci can be computed by solving the over-determined 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).

2.3 Prony Analysis for Time-Domain Design of IIR Filters

In this thesis, we have utilized the MATLABs Signal Processing Toolbox built-in function prony to perform the Prony analysis. The prony function implements the Prony analysis for time-domain 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 ai, and then finds the numerator coefficients bi 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)

B( z ) b0 + b1 z 1 + ........ + bM z M = . H ( z) = A( z ) 1 + a1 z 1 + ........ + a N z N H(z) is the z-transform of h[n] and is related by the following equation: H ( z ) = h[n]z n .
n =0

(2.3.1)

We can rewrite (2.3.1) as

B(z) = H(z)A(z)

(2.3.2)

Equation (2.3.2) is the z-transform 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)

b0 b 1 h0 b2 h 1 . h2 . . . . b = . M 0 hM . . . . hk . 0

0 h0 h1

0 0 h0

...

...

0 1 a 1 . a 2 . . . . . . a N hK N

(2.3.3)

To compute the ai and bi let us partition the matrices as

H1 b 1 = . . 0 h1 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), h1: Column vector of the last K-M terms of the impulse response, H1: (M+1) by (N+1) partition of the matrix in (2.3.3), H2: (K-M) by N partition of the matrix (2.3.3). The lower K-M equations are written as
0 = h1 + H 2 a

(2.3.4)

or
h1 = H 2 a

(2.3.5)
9

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 1a .

(2.3.6)

If K = M+N, H2 is square. If H2 is not singular, (2.3.5) and (2.3.6) can be solved respectively for a and b. If H2 is singular, (2.3.5) may have many solutions. In that case, h[n] is most likely generated by a lower-order system. From this fact, it should become apparent that the assumed model order could have a significant impact on the Prony results. Implementation of MATLABs prony function requires that numerator order M and denominator order N of H(z) in (2.3.1) are known. We have used a user-specified 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 time-domain 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 timedomain design of IIR filters in the sense that it cant compute the b vector.

2.4 Modified Prony Analyses

PA is also a numerically intensive algorithm. It involves solution of an overdetermined set of linear equations and rooting of a high-order 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

Kumaresan-Tufts (KT) algorithm (Kumaresan, Tufts 1987) attains the Cramer-Rao bound. However, the KT algorithm doesnt 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 MATLABs built-in prony, extension to modified algorithms should be readily accomplished, thanks to the modular design of the toolbox.

11