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 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 Non-Parametric 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 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

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 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 )

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,….N-1 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

over-determined 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 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).

7

2.3 Prony Analysis for Time-Domain Design of IIR Filters

In this thesis, we have utilized the MATLAB’s 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 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 z-transform 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 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)

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 K-M terms of the impulse response,

H 1 : (M+1) by (N+1) partition of the matrix in (2.3.3),

H 2 : (K-M) by N partition of the matrix (2.3.3).

The lower K-M 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 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 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 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 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 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 Crame ΄ r-Rao

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 built-in prony, extension to modified algorithms should be readily

accomplished, thanks to the modular design of the toolbox.

11