19
GEOPHYSICS, VOL. XxX11, NO. 1 (FEBRUARY, 1967). PP. i.b.51, 15 FIGS. RECURSION FILTERS FOR DIGITAL PROCESSINGi JOHN L. SHANKS* Digital filters are most often applied to discrete time series by convolving the time series with the unit impulse response,, or weighting functionof the filter. Each output point computed is a weightedsumof a finite number of the input points It is alsopossible to recursively filter a time series. That is, we can computeeach oull)ut point as a weightedsum of input points plzts a weighted sum of previously computedoutput points. The advantageof this technique is that certain filtering operations can be performedmuch faster usingrecursion as compared to convolu- tion. A recursive filter can be expressed as a ratio of two polynomials of the z-transformvariable. Given the rational z-transformfor a particular filter, the recursive rule or algorithm for that filter can be derived. There are various ways to determinethe rational z-transform for specific typesof filtering. Usingour knowledge of the z transform,we can design filters by specifying the rootsof the two ratronal polynomials. Also, we can use the relationship between the Laplace transform and the s-transform to convert desirable analog filter equations into their digital equivalents. We can use least-square techniques to approximate a desired impulse response with a recursion formula. Often the resulting recursion formula will be considerably more efficient in use than the original convolution olxmtion. Wiener filters also can be expressed as rational z-transforms. In many cases the resulting recursion formulas will be quite simple, providing efficient and rapid digital processing. INTRODUCTION Digital filters are a prime tool for processing discrete time series. They can be used for a multi- tude of purposes, from simple band-pass filters to optimum least-squares filters. Because of the large number of multiplications involved in com- puting the output of a digital filter, filtering can consume a considerable fraction of the computer time involved in processing seismogram record- ings. By expressing our filter as a rational func- tion of the z-transform variable, in most instances we can derive an equivalent computing algorithm that is significantly more efficient than digital convolution. Digital filters are most often applied to discrete time series by convolving the input time series with the “impulse response” or weighting func- tion of the filter. This operation is defined as Y~z = g fi%-i (1) i=O where (zo, Xl, x2, . . . , XM) are the M + 1 values of the input series (fO,fl, fz, . . . ,fv) are the A7 + 1 values of t Manuscript receivedby the Editor 8 August 1966. * Pan American Petroleum Corporation, Tulsa, Oklahoma. 33 the filter weighting function (Yo, Yr, Yz, . . . , Y,~+M) are the .\’ + M -I- 1 values of the output series. The convolution operation can also tre represented by the product of the z-transform of the input and filter time series. Using the z-transform, equation (1) becomes Y(z) =F(z) X(z), where X(z) = x0 + x12 + xzzz + . . - $- X&M F(z) = fo +j1z +fiz* + . . . + .l‘.VZ” Y(z) = yo + y&z+ yz2 + . . . $ y,M+Nz”+“. The variable z represents the operation of delay- ing a signal sample one sample interval. The second power of the variable z2 represents a delay of two sample intervals; z”, three sample intervals, etc. The variable z is related to the La- place variable s by z = eTs, where T is the sample interval in seconds.1 1 Many authors define the variable c as a time ad- vance operator, z = e+r8. However, our equations are simplified if we use s = e6a because we work mainly with delay operators. One can easily convert from one defini- tion to the other by replacing s with l/z.

RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

GEOPHYSICS, VOL. XxX11, NO. 1 (FEBRUARY, 1967). PP. i.b.51, 15 FIGS.

RECURSION FILTERS FOR DIGITAL PROCESSINGi

JOHN L. SHANKS*

Digital filters are most often applied to discrete time series by convolving the time series with the unit impulse response,, or weighting function of the filter. Each output point computed is a weighted sum of a finite number of the input points It is also possible to recursively filter a time series. That is, we can compute each oull)ut point as a weighted sum of input points plzts a weighted sum of previously computed output points. The advantage of this technique is that certain filtering operations can be performed much faster using recursion as compared to convolu- tion.

A recursive filter can be expressed as a ratio of two polynomials of the z-transform variable. Given the rational z-transform for a particular filter, the recursive rule or algorithm for that filter can be derived. There are various ways to determine the rational z-transform for specific types of filtering. Using our knowledge of the z transform, we can design filters by specifying the roots of the two ratronal polynomials. Also, we can use the relationship between the Laplace transform and the s-transform to convert desirable analog filter equations into their digital equivalents. We can use least-square techniques to approximate a desired impulse response with a recursion formula. Often the resulting recursion formula will be considerably more efficient in use than the original convolution olxmtion. Wiener filters also can be expressed as rational z-transforms. In many cases the resulting recursion formulas will be quite simple, providing efficient and rapid digital processing.

INTRODUCTION

Digital filters are a prime tool for processing discrete time series. They can be used for a multi- tude of purposes, from simple band-pass filters to optimum least-squares filters. Because of the large number of multiplications involved in com- puting the output of a digital filter, filtering can consume a considerable fraction of the computer time involved in processing seismogram record- ings. By expressing our filter as a rational func- tion of the z-transform variable, in most instances we can derive an equivalent computing algorithm that is significantly more efficient than digital convolution.

Digital filters are most often applied to discrete time series by convolving the input time series with the “impulse response” or weighting func- tion of the filter. This operation is defined as

Y~z = g fi%-i (1)

i=O

where

(zo, Xl, x2, . . . , XM) are the M + 1 values

of the input series

(fO,fl, fz, . . . ,fv) are the A7 + 1 values of

t Manuscript received by the Editor 8 August 1966.

* Pan American Petroleum Corporation, Tulsa, Oklahoma.

33

the filter weighting function

(Yo, Yr, Yz, . . . , Y,~+M) are the .\’ + M -I- 1

values of the output series.

The convolution operation can also tre represented by the product of the z-transform of the input and filter time series. Using the z-transform, equation (1) becomes Y(z) =F(z) X(z), where

X(z) = x0 + x12 + xzzz + . . - $- X&M

F(z) = fo +j1z +fiz* + . . . + .l‘.VZ”

Y(z) = yo + y&z + yz2 + . . . $ y,M+Nz”+“.

The variable z represents the operation of delay- ing a signal sample one sample interval. The second power of the variable z2 represents a delay of two sample intervals; z”, three sample intervals, etc. The variable z is related to the La- place variable s by z = eTs, where T is the sample interval in seconds.1

1 Many authors define the variable c as a time ad- vance operator, z = e+r8. However, our equations are simplified if we use s = e6a because we work mainly with delay operators. One can easily convert from one defini- tion to the other by replacing s with l/z.

Page 2: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

34 John L. Shanks

Some digital filters are expressed as rational functions of z; that is, a ratio of two polynomials in z. For example, a digital filter might be given as

INPUT

A4 (z) F(z) = ___

B(z)

a0 + al2 + a2z2 + . . . + aNzN -- . (2)

60 + blz + 629 + . . . + b,vfz”

The F(z) in equation (2) cannot be applied FIG. 1. Block diagram representxtion of equation (6).

directly by convolution. However, by using long division (Jury, 1964, p. g-10), we may expand F(z) in a simple polynomial: Therefore,

- .zY(z) [b, + bsz]. (6)

In general, the expansion of F(z) will not termi- Equation (6) says that the output, U(z), is equal

nate. That is, there will be an infinite number of to the input convolved with the discrete series

nonzero coefficients jO, jl,, jz, . . . . If the filter is (Q, (I~) minus the output tlclayed one sample

stable, however, the values of the coefficients will interval and convolved with the series (01, bp).

converge to zero and F(z) may be closely approxi- Equation (6) is represented in block diagram form

mated by a finite number of terms, such as in Figure 1. This system is a Feedback system and

F(z) = A (2)

may be realized in a digital computer with a feed-

B(z) ~jo+jlz+j222+ . . . +jKZK. back or recursion algorithm or equation. The recursion equation for Figure, 1 and equation (6) is

Such an approximation to F(z) may be applied successfully to filter a discrete time series by using

yn = aox, + alx,-l - [b1y,,-1 + b2yn-21, (7)

standard digital convolution. assuming that the output sc,ries is computed in

RECURSION FILTERS the sequence YO,Y~,YZ,Y~, . .

The general recursion ecluation for rational Rational digital filters may also be applied

directly. Consider the filter filters such as that representc.11 by equation (2) is

a0 + QlZ (8) F(z) =

1 + blz + bg2 ’ (3)

i-0 i-l

where it is assumed that bo= I .0.2 The b. term can

If X(z) is the input to the filter, then the output P(z) is

P’(z) = F(z)X(z)

a0 + a12

1 + blz + b2z2 X(z). (4)

Multiplying both sides of (4) by l+blz+b~z2, we

get

Y(z) + zU(z> [bl + 6221

= [a0 + a~]X(z). (5)

always be made equal to 1.0 Iby dividing both the numerator and denominator of the rational filter by the initial value of bo, pro\ ided, of course, that bo is not zero. Equation (8) (‘an then be applied.

Let us consider a particular example of a re- cursion filter given by

1.0 F(z) =-- ~-.

1.0 - 0.952 (9)

* Recursion filters are physically realizable in that they cannot respond to an input llefore it occurs. There- fore, since no input occurs before w, we must assume that y,, is zero for n <O.

Page 3: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 35

This filter might be applied by expanding in a the same function as the convolution of the input

polynomial and using convolution. By using long with the filter weighting function.

division: The primary advantage of recursion filtering

1.0 + 0.952 + 0.9025z2 + 0.8574~~ + 0.8145~~ + + . .

(1.0 - 0.952) ) 1.0

we find the expansion to be is saving of computer time Suppo~ we applied

F(Z) = 1.0 + 0.952 + 0.9025~~ + 0.8574z3 the recursion equation (11) to input data; this operation would require one multil)lication and

+0.8145z4 + . . . . (10) one addition per output value coml~uted. On the

We could apply this filter by convolving with a other hand, the unit impulse response repre-

sufficient number of the terms of the series (1.0, sented by equation (10) requires allout 45 coeffi-

0.95, 0.9025, 0.8574, . + * ). We could also apply cients before the values decay to 10 l’ercent of the

this filter by using equation (8). For this filter initial coefficient value. To apply tllis filter with

ao= 1, and bl= -0.95. The resulting recursion simple convolution would require al)llut 45 multi-

equation is plications and additions per output value com- puted. Thus, the recursion filter is a I pout 45 times

yn = x, + 0.95y,_,. (11) faster in this case.

We can test equation (11) to see that it is This example illustrates an extreme saving in

equivalent to (10) by “impulsing” the recursion processing time In some cases recu r-sion filtering does not save any time However, ill many types

equation: we may choose as our input the series (1.0, 0, 0, 0, 0, . . . ). The result is the unit im-

of filters used to process seismic information, it is

pulse response or weighting function of the filter, not unusual to find savings of four or five times

which is identical to the convolution operator of over conventional convolution, anti for certain

the filter. Therefore, using as our input filters the recursion technique call save even greater proportions of computing time over con-

x0 = 1.0 volution.

XP = 0, p # 0, (12) SYNTHESIS OF RECURSION FILTERS IN THE Z-PLANE

we obtain the output series: In order to process data with recursion filters

we must specify the filter coefficients that will

y0 = x0 + (0.95 .Y_~) perform a desired filtering operatiolj; that is, we

= 1.0 + (0.95.0) = 1.0 must be able to synthesize rational digital filters to do specific jobs. One way to specify rational

y1 = Xl + (0.95 .yo) filters is in terms of the roots of the numerator

= 0 + 0.95 = 0.95 and denominator polynomials. Except for a con-

y2 = x2 + (0.95 .yl) stant multiplying factor, these root < completely specify the filter. Consider the filter

= 0 + (0.95)(0.95) = 0.9025 (13) 1 - 1.252

y3 = x3 + (0.95 .y2) F(z) =

1 - 0.42 + 0.2a” . (14)

= 0 + (0.95)(0.9025) = 0.8574 The one root of the numerator, callrtl a “zero” of

y4 = x4 + (0.95 *y3) F(z) is z= f0.8. The roots of the tlenominator,

= 0 + (0.95)(0.8574) = 0.8145. called the “poles” of F(z) are z= I +j2 and z = i +2.3

We see that the unit impulse response of the re- cursion equation is identical to the coefficients of the polynomial expansion as expressed in equa- tion (10). Thus. the recursion equation Derforms

a The symbolj is used here as the imaginary operator, &i. The symbol j is also used in other parts of this report as an index subscript. The appropl-iate definition

A A~--~------ of j should be clear from the context.

Page 4: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

36 John L. Shanks

b

I z-PLANE

2 X zq+ju

FIG. 2. The z-plane representation of the “zeros” (0) and “poles” (x) of F(z) in equation (14).

It is useful to plot the location of the poles and zeros on a graph known as the z-plane (Treitel and Robinson, 1964, p. 15-16). The abscissa TJ of the z-plane graph represents the real part of .Z and the ordinate iv represents the imaginary part of z. Figure 2 is the z-plane plot of the poles and zeros of equation (14).

The unit circle (radius 1.0, centered at the origin) in the z-plane has special significance. We can determine the amplitude and phase response of the digital filter (Treitel and Robinson, 1964, p. 17) by evaluating F(z) for 1 zI = 1.0. Values of z for which i zi = 1.0 correspond to values of real frequency. Using the equation z = e-mT, where w is frequency in radians per second and T is the sam- pling time increment, we see that the values of real w correspond to values of 1 z] = 1.0. The point z= l.O+jO.O corresponds to zero frequency. The point z= - l.O+jO.O corresponds to f,~=w,\i/2n = 1/2T, the Syquist, folding, or alias frequency. Frequencies linearly distributed between zero and ,fl\r correspond to points on the upper half of the unit circle linearly distributed in angle between 0 and 7r radians. By evaluating 1 F(z) 1 and 0(z) at some 1 zI = 1.0, where

F(z) = 1 F(z) j ej”(z), (15)

we are in effect finding the amplitude and phase response of the digital filter which F(z) represents.

The z-plane can be used to make a rapid graphi- cal evaluation of the amplitude and phase re- sponse of a filter whose pole and zero locations are m an unstable leedback hlter.

4 The rules for computing the phase spectrum are different for the two z-transforms, c=e+raaand z=~Y’~.

6 We must locate the poles outside the unit circle. A pole inside the unit circle will Ilroduce an expansion whose coefficient values diverge 11) infinity. This results . _ ^

known (Truxal, 1955).4 Thus, by graphical analy- sis of the pole-zero locations, we can use the z-plane to design simple digital lil ters by appropri- ately locating the filter poles at~d zeros. Suppose, for example, that we wish to clesign a filter to remove the zero-frequency component from a trace. We know that we can (IO this by using a rational filter with a zero at z = l.O+jO.O, which corresponds to zero frequency. The z-transform equation of this filter is 17(z) = 1 -z. However, consider the amplitude response of a filter with no poles and just one zero at z= I / ,jO.O. This filter is plotted on the z-plane in Figure. 3. The length of each line to the points on the u tI i t circle represents the amplitude response of thcx filter at that fre- quency. We see that, as the frequency increases from 0 to f,~, the amplitude response increases slowly from zero to 2.0. Therc,fore, although this filter suppresses the zero-frequc,ncy component, it also distorts the rest of the sl)cctrum from zero frequency to f,~.

We can improve this filter hy adding a pole close to the zero. Suppose WC’ locate a pole at z= 1.01.5 This filter has the traIlsform,

F(z) = 0.9901(1 -- z)

1 - 0.99012 ’ (16)

which is plotted on the z-plant as shown in Figure 4. The amplitude response at each frequency is the ratio of the length of tilt. solid line to the length of the dashed line associated with that frequency. For frequencies close to zero, this ratio is small and approaches zero as the fre- quency approaches zero. For frequencies greater than zero, the ratio quickly al)l)roaches and stays close to 1.0 throughout the band. Therefore, this is a good filter to remove the zl,ro-frequency com- ponent, as it attenuates only, I he zero and very low frequencies, and passes most frequencies with very little amplitude discrimination. The ampli- tude response of this filter is ljlotted in Figure 5. The recursion equation for this filter is, by appli- cation of equation (8)

yn = 0.9901x, - 0.9901.X,, 1 + 0.99Oly,_*.

Page 5: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 37

We may also design a filter to reject some par- ticular frequency by locating zeros of the filter at the points on the z-plane unit circle corresponding to that frequency. Suppose, for example, that we desire to reject 60-cps interference in data which has been sampled at one-ms intervals. The z-plane points which correspond to 60 cps occur on the unit circle at angles of _tQ, determined as follows:

Q = %80 = $180 = 21.6’. f N

Hence kfi = -t 21.6’. The locations of these points in the z-plane are

z = 0.929% +jO.36805

z = 0.929% -jO.36805. (17)

Therefore, we shall design the filter to have zeros at the points indicated by equations (17). We do not want the filter to affect the signal spectrum away from 60 cps; therefore, we shall locate two

poles just outside the unit circle anti close to the two zeros. We have located the poles at

z = 0.94 +jO.3721

z = 0.94 - j0.3721. (18)

The resulting filter with zeros given by equations (17) and poles given by equations (18) is

F(z) = 0.9901[1 - 1.85962 + z”]

-~ . (19) 1 - 1.839562 + 0.9i%49z2

The poles and zeros of this filter are plotted in Figure 6, and the amplitude response as a function of frequency is plotted in Figure 7.

We are limited in the type and complexity of filter that we can design in the above fashion. For the more complex filters, we need a more system- atic approach. There are a number of techniques available for designing band-pass and other asso- ciated types of recursion filters (Kaiser, 1963;

z-PLANE

FIG. 3. Plot of filter function I;‘(z) = 1-z.

Page 6: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

38 John L. Shanks

.6 fn

FIG. 4. Evaluation of F(z) -0.9901 (l-z)/(l-0.99012) at points on the unit c-ircle

I I I I I I I I

0 -02 fn -04 f” ,06 fn .08

FREQUENCY IN CPS FIG. 5. Amplitude response of F(z) =0.9901 (1 -z)/(l-0.9901~).

Page 7: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 39

Whittlesey, 1964; Robertson, 1965; Holtz and

Leondes, 1966). There is also a wealth of literature

available concerning the design of analog filters

using the Laplace transform. We can use one of a

number oi synthesis techniques to locate the poles

and zeros of the filter in the s-plane. The resulting

filter polynomial in s can then be converted into a

polynomial in z (Jury, 1964, p. 20-26). For exam-

ple, a technique exists for designing a class of

filters known as Butterworth (Guillemin, 1957, p.

588-591) band-pass filters. Suppose we wish to

design a band-pass filter having lower and upper

cutoff (3 db down) frequencies of LO cps and 40

cps, respectively, and having eiglrt poles in the

z-plane. Application of the Butterworth technique

in this instance produces a filter wii h four s-plane

zeros at s =0, and eight s-plane poles at

s = - 66.93 _+ j194.01

s = - 50.24 f j146.08

s = - 31.9 kj244.8.i

s = - 16.63 +j127.07.

This filter has the transfer functiorr

s4 F(s) = -

gssr + g7s’f gsP + gss5- + g4s’ + gd + gd + g1s + go (20)

PIG. 6. Plot of z-plane poles (x) and zeros (0) of 60.cps rejection filter.

Page 8: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

40 John L. Shanks

F(z)_ 0.9901,{1-I.85961 + z*} I-I.839562 t 0.97849z

8.8.-

F 0.4 -

Iii

5 0.2 -

0 I I 1 I I 1 I I I P I 0 IO 20 30 40 FREO”%Y l6N0 70 80 90 100 II0

CPS

FIG. 7. Amplitude response of 60.cps rejection filter.

where

g6 = 1.8209 X 105

g5 = 3.6941 x 10’ This filter can be applied by a series of recursive operations, given by

g4 = 9.8151 X lo9 (21) crl = ST, - x,-z + 1.83646~,_~

ga = 1.1744 x 10’” - 0.87576~,_2

gg = 1.8404 X 1014 d, = c, - cm-2 $ 1.88227d,_l gl = 1.0649 X 10’6 - 0.90487d,_2 (24) go = 1.0216 X 10’8. e,, = d,, - d,_~ + 1.88085e,_1

Assuming a one-ms sample interval, and trans- -0.93907e,_1 forming6 equation (20) into a polynomial in 2, we obtain the discrete filter

yn = e, - en__3 + 1.95117y,_1

-0.96741y,_s

F(z) = (1 - 294

__- (22) &(z)B2(z)~3(z)B4(2)

where xi is the input to the filter and yt is the output. When applying high order recursion filters

where such as this, care must be taken that round-off

B&) = 1 - 1.836462 + 0.87576~~ error in the coefficients does not cause instability (Kaiser, 1966). This difficulty can be averted if

6 For this numerical example the transformation the denominator of the filter can be expressed in

~=(2/T)(l-z/l+z) was used (T=sample interval). quadratic factors (equations 22 and 23) and

The use and advantages of this transformation are given the filter applied by a series of recursion opera- by Golden and Kaiser (1964). tions as in equations (24). The impulse response of

Page 9: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 41

the recursion filter described by equations (24) is shown in Figure 8. Note that the filter might be approximated satisfactorily with about 180 terms at one-ms intervals. Thus, simple convolution would require 180 multiplications per output point. The recursion equation requires only eight multiplications per output point.

Figure 9 shows the amplitude response of the recursion filter of equations (24). This is typical of band-pass filters of the Butterworth type. Higher order filters (having more terms) are flatter in the passband and attenuate more sharply at the cut- off frequencies.

We now consider the phase response as a func- tion of frequency for recursion filters. Recursion filters must be stable and respond only in positive time Therefore, in general, they do not have zero or linear phase spectra. There are techniques for designing various types of- rationai- filters with quasi-linear phase response (Guillemin, 1957, p. 632-644). However, if the input time series is finite in length, a simple manipulation produces a filtering operation with linear phase response. Using recursion, zero phase filters may be pro- duced in the following ways:

I. Filter the input data with a recursive filter F(z) in the normal manner to produce a first out- put. This output is then reversed in time and filtered with the same recursion filter to produce a second output, This second output is reversed in time to obtain the final output signal. In this technique, a sufficient number of zero values must be added at the end of the input data to allow the first output to decay to a reasonably small ampli- tude before terminating the computation7 The phase response of this filtering operation is zero for all frequencies, while the amplitude spectrum is the square of the spectrum of F(z). For band- pass-type filters, this creates no problem and will in fact give sharper cutoff slopes. For filters in which the shape of the filter, in the passband is important, it is necessary to design F(z) to have an amplitude spectrum that is the square root of the desired spectrum.

II. A complete forward and reverse recursion filter may be factored by partial fractions (Jury,

7 From knowledge of the forward and reverse impulse response of the recursion filter, it is possible to initiate the backward filtering operation without computing the complete transient decay of the first output. This alter- nate technique would be useful for filtering short input signals with a highly resonant recursion filter.

I I I I I I I I

0 50 100 150 200 250 300 350 400

time IN MS

FIG. 8. Impulse response of eighth-order Butterworth band-pass recursion filter.

$ 1.0 N 0.9 $ 0.8 IO.7 80.6 1 l-7

z&J , Id,, , ,

0 20 40 60 80 100 frequency IN CPS

FIG. 9. Amplitude response of eighth-order Butter- worth band-pass recursion filter.

1964, p. 10) into the sum of a stable positive-time filter and a stable negative-time filter. The output of this complete filter can be computed by filtering the input with the forward recursion filter and adding to this result the input filtered backwards with the negative-time filter.

It is not actually necessary to reverse the data to achieve reverse-time filtering. Time-reversing the input to, and the output from, a filter F(z) is equivalent to replacing z in F(z) with l/z. For example, consider the filter in equation (16). Re- placing z with l/z we have

F(l/z) = 0.9901(1 - (1, 2))

1 - (0.9901;s) . (25)

If V(z) is the input and U(z) is the output of the filter, then

Y(z) = V(e)0.9901( 1 - 2-q

Since 0 represents a time advance, we may use the same argument as we did for ~luation (6) to

Page 10: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

42 John L. Shanks

write the recursion equation

yn = 0.9901V, - 0.99010,+1

+0.99olg,+l (27)

assuming that the output series is computed in the sequence YK, YK_~, yK_2, YK_~, . . . , where zK is the last value in the input series. In general, the algorithm for recursiveiy titering a finiti-icngtzr time series with the time reverse of a filter is

(28) i=o j-1

n = K, K - 1, K - 2, K - 3, . . .

where

F(z) =

g 4

1 + 5 6jZj

(29)

SYNTHESIS OF RECURSION FILTERS

IN THE time DOMAIN

Suppose that we have some desired filtering operation which is described by the unit impulse response of the filter. We would like to design the recursion filter which closely approximates the desired response. In other words, given some desired filter operator D(z) we require the coeffi- cients of A(z) and B(z) of the filter

F(z) = z =jo+j1z+j2z2

such that

+ j3z3 + . - - (30)

F(z) = D(z) = do + d,z + a*22 + * * *

+ dKzK. (31)

We shall outline a technique for determining A(z) and R(z). Suppose

A(z) = a,, + alz + a2z2 + . - . + a,~.9 (32)

and

R(z) = 1 + blz + b2z2 + e . . + b,tfz” (33)

where N and M are arbitrary numbers which fix the number of A and B coefficients. The numbers

N and M must be chosen large enough for F(z) to approximate D(z) with suflicicnt accuracy and yet small enough to produce a 61 tcr which is sig- nificantly more efficient than a lilter designed for use in direct convolution (convcutional filtering). If N+M is smaller than K, tllcn the recursion operation will be more efficient I ban direct convo- lution.

I?rUm CqiMiUIT (30) we obtain F(z) a;zj = A (3. Substituting from equations (32) and (33),

F(z){ 1 + 612 + b& + . . . $ bofzJf)

= a0 + alz + a2ze + . . . + ajj7zN. (34)

Since multiplication of z-transforms is equivalent to convolution of the discrete time series, the series of at coefficients is equal IO the convolution of theft coefficients with the bt coefficients, or

at = 5 bjft_,.

Since bo = 1,

j=O

jt + 2 bJt-i = (it

(35)

(36) j=l

M

jt = at - c bil’t. _i. j=l

(37)

The operation represented by equation (37) is equivalent to impulsing F(z) and recursively finding the impulse response. SitIce at=0 fort >N (from equation 32), we may write

jt = - 2 bift-j, for t > N. (38) j=l

If we judiciously choose the 6 coefficients, the response .ft will approximate closely the desiretl response dt for t >N, and we ma!. write

dt = - 5 bjd, _j, j=l

for t = N + 1, il: + 2, . . . , K. (39)

Let us define an error series, ct, which can be added to the right side of equaticm (39) to make it equal to the desired series, dt. 7’11~s:

dt = - 2 bjdt-j + et. j=l

(40)

Page 11: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 43

Therefore, That is, let us choose A(Z) such that

et = dt -I- c b,dt-i j-1

(41)

= C bidt_i, j-0

f = ,\r + I, s + 2, . . - , K. (42)

IA us choose the b coefficients such that the mean square error is minimized; that is, such that

e? = C 1 C bjd_j ( (60 = 1) (43) l=N+l L j=O -I and the mean square error is

is minimized.* By differentiating (43) with respect to the

coehicients bl, bz, . . . , bM, and setting the result- ing equations equal to zero, we get the simultane- ous equations

where

$k = - c dtda. (46) t-N+1

We can compute the @ik and the +k from equa- tions (45) and (46). Then by solving the set of simultaneous equations (44) we can determine the b coefficients which minimize the mean square error (equation 43).

Having computed the denominator B(z) of the filter, we now compute the numerator A(z): given B(z), let us determine the Nfl coefficients of the polynomial A(z) such that

A(Z)jH(Z) = F(z) = D(z).

8 For N = 0 we would he computing Wiener’s predic- tion filter (Wadsworth et al., 1953). Thus, ure might call P(Z) the generalized prediction filter. This technique is also similar to one described by Yengst (1962) for synthesizing analog circuits.

is minimized. If the first Kfl terms of the cxpan- sion of l/B(z) are

I/R(z)

= PO + 612 + i%z2 + . * * i BKZK (47)

then N

j=O

Minimizing expression (48) is a standard discrete Wiener problem (Treitel and Robinson, 1966) and consists of finding that optimum filter A(z) which operates on p(z) to produce a least ~squared-error approximation of D(z).

A computer program has been I\ ritten to com- pute rational digital filters according to the above techniques. For example, suppose that we wish to design a recursive digital filter A(z)/B(z) which will approximate the desired imlmlse response given in Table 1. For this example, t hc coefficients

Table 1. Comparison of desired impulse response (dt) with recursion filter impulse response (ft)

synthesized in the time domain

time index 1 Desired impulse Recursion filter response dr iml)ulse response fi

0 :%398

11:60127 13.70234 8 46941 0.77459

-3.32507 -2.76428 -0.36354

1.09864 0.96824 0.15047

-0.37349 -0.34431 -0.06248 -0.12631

0.12224 0.02534

-0.04257 -0.04332

::%398 11.60127 13.70234 8.46941 0.77468

-3.32494 -2.76420 -0.36355

1.09856 0.96814 0.1.5042

-0.37347 -0.34426 -0.06245

0.12631 0.12222 0.02532

-0.04257 -0.04331

Page 12: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

44 John L. Shanks

of the desired response were computed by impuls- are the values of the discrete autocorrelation of ing the digital filter the input to the filter at lag values r =n-i, and

1 + 42 + 6~~ + 4e3 + z4

D(z) = - ’ 1 - 1.253982 + .98713z2 - .34093a3 i- .05237z4 (49)

Let us choose N= M =4 and apply the above techniques to the desired response in Table 1. Using equations (45) and (46), and solving equa- tions (44), we find the optimum denominator -=<r<m (54) B(z) to be

are the values of the discrete crosscorrelation of B(z) = 1 - 1.254092 + .98727z2 the input and the desired output.

- .34104z3 + .0524z4. (50) We may take the z-transfornl of equation (52)

to get Having B(z), we can find the A(z) which mini- mizes equation (48). The optimum A(z) is

A(z) = 1 + 3.99989~ + 5.999592”

+ 3.99937~~ + .99962z4. (51)

The response of the filter F(z) is obtained by impulsing the recursion equation F(z) = A(z)/ B(z). We see from Table 1 that the program has computed a fourth order (numerator and denomi- nator) recursion filter which very closely approxi- mates the desired response. We may also compare the coefficients in the computed numerator and denominator polynomials (SO) and (51) with the actual recursion filter (49).

THE WIENER FILTER

The Wiener optimum discrete filter may be computed for various combinations of signal and noise. The finite-length Wiener filter (Treitel and Robinson, 1966) and the one-sided, infinite-length Wiener filter (Monroe, 1962) are discussed else- where. We shall discuss here the two-sided, infi- nite-length Wiener filter. The discrete optimum filter is specified by the discrete form of the Wiener-Hopf equation (Wiener, 1949),

cc

F(zb#J& = 9Ldz) (55)

where F(z) is the z-transform oi 1 hef, series,

C&(Z) is the z-transform of the c#+“” series, and

&d(z) is the z-transform of thy &“” series. (56)

Therefore, the z-transform of 111~ optimum filter is

To illustrate how equation 157) is used, let us consider the following example;

Example of smoothing jilter

Suppose we have as input to the filter a signal wavelet and additive random noise, as shown in Figure 10. Here the purpose of the filter is to sup- press the random noise N(z). Suppose also that the additive noise is independent from sample to sample (white noise), and has a mean square value, an2. We shall let the desired output be D(z) =.5’(z), and for this example we shall also assume that S(z) = 1+0.42. Ii the input due to signal consists of a collection or ensemble of signal wavelets S(z) occurring randomly in time then

c jna- ,“” = 4%“” n=-cc

where fn, - m <n < 00, are the weighting coeffi- cients of the optimum filter;

(52) ‘:‘T MTi “;;;T_

I DESIRED OUTPUT &&2‘z = &“” = lim i 5 xlxt_+r, NOISE

M-cc 2&f t=--M Dm=INPUT Se,

NW

--a,<r<m (53) FIG. 10. Optimum filter for filtering signal plus noise.

Page 13: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 45

the z-transform of the autocorrelation of the signal 0.34482/z + 1.0 + 0.3-l-182~ ensemble is F(z) =

0.34482,/s + 1.2 + 0%48% ’ (68)

c#&(z) = Ks(z)S(l/z) (58)

= K{0.4/2 + 1.16 + 0.4~) (59) Equation (68) cannot be applied tlirectly as a recursion filter since the denomina I or has a root

where K is proportional to the rate of occurrence of signal wavelets S(z). The zero-lag value of the autocorrelation of S is

+“,“=a = 1.16K

= power in the signal ensemble. (60)

inside the unit circle.Q However, if we factor the numerator and denominator, we can separate the filter into two separate stable filler operations. The roots of the numerator are

2 = - 0.4

2 = - 2.5. (69) Using equation (60), let us rewrite equation (SUj

The roots of the denominator are as

4s.(zj z= - 0.31606

= &,““(.34482,‘z + 1.0 + .34482z). (61) z = - 3.16393. (70)

To design the optimum filter we need to know the Therefore, we may write F(z) in cctuation (68) as

autocorrelation of the input to the filter, which is

the sum of signal and noise. Assuming that the F(z) = ~ (2 + OA)(z + 2.5)

(z + 0.31606)(z + 3.16393) (71) noise is uncorrelated with the signal,

&Z(Z) = #%(z) + &n(z) (62) or, with some algebraic manipulation of equation

= &,SS(0.34482/z + 1.0 + 0.34482~) (71),

+ G2. (63) 1 + 0.1 Z

F(z) = (0.79) __- ---

The transform of the crosscorrelation of the input xt with the desired output dt (which is equal to SL) is &d(z) = ~$~,(z). Since x1 =St+ltt,

1 + 0.316rlh,‘s

1 + 0.42

1 + 0.316062 ’ (72)

4z&) = 489(Z) + 47Ldz). The term (1+0.4z)/(1+0.3160Gz) can be realized

However, st and nl arc uncorrelated, making with the stable recursion equation

AS(z) = 0, and yn = -T, + 0.4.&r - 0.316Ohy,_,. (73)

&d(z) The term (1+0.4/2)/(1 f0.31606, c) is not stable = &M(z) (64) as a positive-time filter. It can, however, be ex-

= #$“(0.34382,/~ + 1.0 + 0.34482~). (65) panded as a negative-time filter, or if the data is reversed in time before this term of the filter is

Therefore, the optimum filter is applied, it can be realized as a stable recursion

4XdM 40”“(0.34482/~ + 1.0 + 0.34482~) F(z) = __ = -___

&x(z) $~P(O.34482/‘~ + 1.0 + 0.34482~) + u,,2 (66)

0.34482/z + 1.0 + 0.34482~

= 0.34482/z + (1.0 + un2:/c#@) + 0.344822 ’ (67)

_

The term u,~/c#$” is the ratio of the mean-square 9 The values of the coefficients in the denominator are

value of the noise to the mean-square value of the symmetric. Hence, the roots of the denominator must

srgnsl. For example, suppose that the power .sig occur in reciprocal pairs, and a root outside the unit

m&to-noise ratio is 5.0; then ~~~/40”“=0.2, and circle must be accompanied by a- :CXSI inside the nnit circle.

Page 14: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

John L. Shanks

vn= x, + 2.9X”_, + X”_2

-0.31606~~ _,

INPUT ,Xt

vt t

qqp

FIG. 11. Optimum filter utilizing reverse recursion relationship for F(z) as expressed b! equation (74).

filter. Reversing the data in time is equivalent to replacing the z variable in the filter equation with l/z. Applying this to the above terms, we obtain (1 +O.&)/( 1+0.31606z) which has the same stable recursion formula given by equation (73).

For stability, it is only necessary to separate the denominator of F(z) into its inside- and outside- unit-circle roots. The numerator can be left intact and applied in the forward direction. A realization of the filter using this technique is shown in Figure 1 I. Also used in Figure 11 is the reverse recursion relationship for the negative time term. This eliminates the need to twice reverse the data in time Figure 11 illustrates the realization of the filter equation

F(z) = (1 + 2.92 + z2)(0.316W’4 ____ 1 (74)

(1 + 0.31606z)(l + 0.31606/z)

which is obtained from equation (68) by alge- braic manipulation.

Erclmpie 01. optimuna ilzverse filter

In this example, let us suppose that the input signal at (which is also the desired signal) is passed through a filter, as shown in Figure 12, before it is corrupted with noise. Let us suppose also that the signal and noise have flat spectra with mean- square values a.* an d ua2. Thus, the transforms of the autocorrelations of SL and pzt are &(z) =uS2, and &(z) =ulL2. To determine the optimum filter we need to know the autocorrelation of xt and the crosscorrelation between .t’t and the desired output signal. If S( and 1~1 are uncorrelated, then g, and nt are uncorrelated, and the autocorrelation of Xt is

equal to the sum of the autocorrelations of gt and ILL. The z-transform of the autocorrelation of gt is related to the autocorrelation of st by

us2

= (1 + ae)(l + a/z) (W

Therefore,

&2(z)

= d%,(s) + &n(s) (77)

us2 =-- -_

(1 + az)(l + a/z) + un2 (78)

cm&“/z+ (o,2+(1+d)G,q +cw,?2 =

(1 + az)(l + a&) ~___ * (79)

FIG. 12. Optimum filter for pretiltered signal and additive noise.

Page 15: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 47

The crosscorrelation of zt and ~1 is equal to the can be realized in a computer. By some manipula-

crosscorrelation of gf and it, which is tion of equation (83), we get

Therefore, the optimum filter is

1 + ffy/z (81)

au?2 2/z + {U#2 + (1 + d)un2) + QUn2Z

(1 + cu/z)(l + 4

C7*2(1 + az) -___

= o!u,2/z + {&2 + (1 + cr2>u,2] + Ck%2z (82)

Y2(1 + Lyz)

= 42 + {r2 + 1 + 2) + a2

(83)

where

2

y2 = 3 = power signal-to-noise ratio. (84)

This filter is particularly interesting, as it is an example of an optimum inverse or “deconvolu- tion” filter. Note that, if the signal-to-noise ratio y2 is very large, the filter becomes

lim F(z) = { 1 + CL,) . (85) y2+m

This is a strict inverse to the prefiltering operator l/(l+olz). For a very small signal-to-noise ratio, the filter becomes

r2(1 + o(z) lim F(z) = ~

a/z + (1 ___ (86)

yt--tCS + CY”) + (Yz

Y2(1 + crz)

= (1 + (.y/z)(l + o!z) (87)

r2 =-. 1 + a/z (88)

This filter is the so-called matched filter to the prefilter l/(l+otz), since the impulse response or expansion of l/(l+(~/z) in negative time is the time reverse of the positive-time expansion of l/(1+4.

The complete filter described by equation (83)

The roots of the denominator of equ;llion (89) are z= -X and z= -l/X, where

A=+[(?+,)

+ ({F+0}2-4)“2] (90)

with the sign appropriately chosen so that X < 1 .O. Therefore,

F(z) = r”(l/CY + z>z

b + V(z + l/X) (91)

r2X(1/a + z)

= (1 + X/2)(1 + hz) (92)

Equation (92) can be realized in a computer which performs the operation shown in Figure 13.

Example oj deghosting jilter

Let us consider in this example t!re problem of deghosting a seismogram signal. We shall assume that we have two sampled seismogram traces (time series) for each seismometer station. We shall also assume that the two traccxs at each sta- tion have been made with the shots at different depths so that the essential difference in each pair of traces is that the ghost reflection has a different delay with respect to the correspondiIlgprimary re-

Page 16: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

John L. Shanks

FORWARD RECURSION INPUT

< V” =( -+ ““f (hy21xn_, -hv,_,

XY2 Xt

FIG. 13. Optimum titer for the system in Figure 12.

flection signal. If the traces from a given seismom- eter station are adjusted in time such that the primary signals are aligned, the two traces lrt and zr’rl may be characterized as

%t = S1 + g, + ‘nt (93)

*yt = St + gt-, + 2% (94)

where

S‘ = primary reflection signal

g, = ghost reflection signal

gt_,= ghost reflection signal delayed

by T samples

&=random noise in trace 1 with

mean-square value an2

%zt= random noise in trace 2 with

mean-square value un2. (95)

The ghost is removed from these two traces if ryt is delayed by r samples and subtracted from %t.

The resulting trace xt is

xt = 271 - rrt-, (96)

= St + gt-, + 2%

- {Lr + gt-, + *Ttt-,) (97)

= St - St-, + %t. (98)

Thus the ghost is removed; however, this process yields a distorted primary reflection signal, and random noise %zl, with mean-square value 2umz, is present.

We would like to design a filter which will re- construct, from xt, the undistorted primary reflec-

tion signal as best it can. To design the W’iener filter we need the transform of the autocorrelation of the input, which, from equation (98)) is

4%(4 = 4*(4 f 6& -!- 4s&Jz!

- zT4%&) - Z-r4&) (99)

= 4&) ( -l/z, + 2.0 - zr)

+ +3,3,(z> * W)

We also need the z-transform d the crosscorrela- tion of the input to the optimum filter with the desired output. This is

AS(J) = #J&) ( 1 - z-q,

Therefore, the optimum filter is:

(101)

F(z) = 4&> ( 1 -z_’ )

___ . (102) &(z)( -1/2’+2--z’f +43,3”(z)

Let us assume that the spectra of the primary signal and noise are flat. This is not usually so; however, we shall obtain a useful filter even though it will not be quite optimum. Therefore, let 4888(2) =4,2, and +qS3,(z) =u~,,?=ZU~~. The filter is therefore

a,2{1 -2 T)

F(z) = l&2( -l/C + 2 - ZQ + 2un2 (103)

yq 1 - z-r} =

ya( -l/P + 2 - zq + 2 (104)

{ 1 - z-q = ~ (105)

-_l/zT+2 !A? i 1

_-Zr

Y’

Page 17: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 49

where y2 = ~~~/a,~, Equation (105) may also be written as

/A(1 - 2-r) F(z) = _____- ~ .~~-

(1 - /M) (1 - P/Z’) (106)

where

Y2 -- * (107)

p = 1 + y2 + (1 + 2-y”)“”

The complete deghosting filter is shown in Figure 14. The first input lyt is delayed T samples and subtracted from the second input %t to produce xt, This result is filtered with the forward and reverse recursion filters. as specified by equation (106).

Let us illustrate the deghosting filter with a numerical example. Figure 1.5 shows two synthetic seismogram traces, trace 1 and trace 2, each con- sisting of a single primary reflection signal, its ghost and additive random noise. The difference in time delay between primary signal and ghost in the two traces is five sample intervals. The power signal-to-noise ratio for the two traces is 100, or 20 db.

The third trace in Figure 1.5 shows the result of delaying trace 1 by 7= five sample intervals and subtracting trace 1 from trace 2. ‘l’he resulting difference trace is passed through t11c forward and reverse recursion filters as shown in Figure 14. The value of p is 0.86823. The resullant deghosted output trace is trace 4 in Figure 15. The deghost- ing process has reconstructed the ot-iginal shape of the primary signal. There is still considerable random noise present since the fi1tc.r did not take advantage of the differences in the spectra of the primary signal and the noise to sul+ress the ran- dom noise. This could be accomplisllcd by filtering the output of the dcghosting filter- with a band- pass filter that passes mainly the Ggnificant pri- mary signal frequency componenfs and attenu- ates all other frequency componenf5.

CONCLUSIONS

Digital filters which are expressed as rational polynomials in z may be applied by a recursion or feedback equation. Based on the same multiply times for both recursion and convolution, recur- sion filtering can be considerably faster than con- ventional convolution for many fil t rrs. However,

FORWARD

RECURSION REVERSE

RECURSlOfi

_ INPUT

*r t FIG. 14. Complete deghosting filter.

Page 18: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

50 John L. Shanks

I I I I I I I J

0 20 40 60 80 100 120 140 160

time (SAMPLE INTERVALS)

FIG. 15. Synthetic deghosting example.

(1) Trace 1 (rrJ with primary reflection (sJ, ghost reflection signal (gi) and random noise (rnr). (2) Trace 2 (*rJ with primary reflection signal (sJ, ghost reflection signal (gr-r) and random noise (2~~). (3) Trace 3 (xl), result of subtracting delayed trace 1 from trace 2. (4) Trace 4, deghosted output after forward and reverse recursion filtering of the difference tt-ace.

several computer companies presently provide

special-purpose high-speed devices for performing

convolution. If such a device is used for convolu- tion, these time estimates must be reevaluated, unless a similar high-speed device is available for performing the recursion.

There are numerous ways to compute the coeffi- cients of rational filters designed for specific filter- ing operations. We can compute a rational filter to approximate some specified impulse response. The longer the filter (that is, the more coefficients we compute), the better the approximation. For efficiency, however, the number of rational poly- nomial coefficients must be less than the number of points in the equivalent direct-convolution operator.

We can also design rational filters for certain types of amplitude responses, such as for low-pass, high-pass, band-pass, or band-reject filters. These can be designed by specifying the roots of the lilters in the z-plane, or by specifying the roots in the s-plane and converting the roots to the z-plane. Approximately linear phase filters can be designed as single-pass recursion filters; however,

an exact zero-phase filter can be designed as a two-pass recursion filter that filters the data for- ward and backward through the same filter.

The optimum Wiener filter can be written as a rational filter with a two-sided impulse response. This necessitates determining the roots of the denominator of the rational filter to separate the stable positive-time and negati\,c,-time portions of the response. For the simple examples given, the denominator polynomials coul~l be factored di- rectly. For more complicated polynomials, com- puter programs exist which will find the roots of high-order polynomials.10 Armther technique which will factor a symmetric denominator poly- nomial into its positive-time and negative-time parts is to find the least-squares approximate inverse (Robinson and Wold, 1963) of the wavelet whose autocorrelation is given I)y coefficients of the symmetric polynomial. An inversion of the inverse by means of polynomial division or by a second application of the least-s 1 uares inverse will

lo A program by Mercer (1965) using a combination of the Muller and Newton techniques can factor poly- nomials up to the 99th order.

Page 19: RECURSION FILTERS FOR DIGITAL PROCESSINGtratamientodesenales-fiunam.weebly.com/uploads/4/4/6/5/... · 2018. 9. 11. · Digital filters are a prime tool for processing discrete time

Recursion Filters 51

produce that part of the denominator polynomial

which expands stably in positive time

Recursion filtering has useful applications in

processing seismic signals. For many types of

filters, especially narrow-band filters with long

convolution operators, recursion filtering can save

substantiai amounts of c~omputerprocessing time

REFERENCES

Golden, R. M., and Kaiser, J. B., 1964, Design of wide- band sampleddata filters: The Bell System Tech. Jour., v. 43, p. 1.533-1646.

Guillemin, E. i\., 1957, Synthesis of passive networks: New York, John Wiley and Sons, Inc.

Hoitz, ti;, and L~nlcs; C. T., 1966, The synthesis of recursive digital filters: Jour. ACM, v. 13, no. 2, p. 262-280.

SHARE program catalog, S.D.A. 3332 Monroe, A. J., 1962, Digital processes for sampled data

systems: New York, John Wiley and Sons, Inc., p. 203-218.

Robertson, H. H., 1965, Approximate &sign of digital filters: Technometrics, v. 7, no. 3, p. 387-403.

Robinson, E. .4., and Wold, H., 1963, Structural proper- ties of stationary stochastic processes with applica- tions: Proc. Symposium on time Series Analysis, ed. M. Rosenblatt, New Yolk, John Wiiey and Sons, Inc., p. 184187.

Treitel, S., and Robinson, E. A., 196+, The stability of digital filters: Trans. Geoscience Electronits, v. 2;

- 1966, The design of high resolution digital filters: Trans. Geoscience Electronics, v. 4, p. 25-38.

Truxal, J. G., 1955, Automatic feedback control system synthesis: New York, McGraw-Hill Rook Co., Inc., p. 531.

Wadsworth, G. P., Robinson, E. A., Br:-an, J. G., and Hurlev. P. M.. 1953. Detection of reflections on seismic’records by linear operators: Geophysics, v. 18, p. 539-586.

Jury, E. I., 1964, Theory and application of the z-trans- form method: New York, John Wiley and Sons, Inc.

Kaiser, J. F., 1963, Design methods for sampled data Whittlesey, J. R. B., 1964, A rapid method for digital filters: Proc. E‘irst Allerton Conference on Circuit and filtering: Comm. ACM, v. 7, no. 9, p. 552-556. System Theory, Monticello, Ill., p. 221-236. Wiener, N., 1949, Extrapolation, interpolation, and

__ 1966, Some practical considerations in the realization of linear digital filters: Proc. Third Aller-

smoothing of stationary time seric.5: Cambridge, M.I.T. Press.

ton Conference on Circuit and System Theory, Mon- Yengst, W. C., 1962, Approximation to a specified timeticello, Ill., p. 621-633.

Mercer, R. H., 1965, Polynomial root extraction: response: 152-162.

IRE Trans. Circuit Theor:., v. CT-9, p.