DSPRelated.com
Forums

Question on IIR filtering

Started by rob.hutchins January 24, 2005
Hello list,

I realize that this may be a very elementary problem, but I'm new to
DSP and would very much appreciate your help.

If you are given a frequency response and you know that:

1. the part of the curve you're interested in can be modeled using a
narrow bandpass IIR filter

2.  you want to flatten that part of the curve

how would you design the inverse filter? Also, how would you achieve
the desired flat response?  

Thanks in advance,
Rob

"rob.hutchins" <rob.hutchins@gmail.com> writes:

> Hello list, > > I realize that this may be a very elementary problem, but I'm new to > DSP and would very much appreciate your help. > > If you are given a frequency response and you know that: > > 1. the part of the curve you're interested in can be modeled using a > narrow bandpass IIR filter > > 2. you want to flatten that part of the curve > > how would you design the inverse filter? Also, how would you achieve > the desired flat response?
Well, if you've modeled the curve with an IIR, then that means that the transfer function can be specified as a rational function in z (i.e., a ratio of polynomials in z), G(z) = N(z)/D(z). The inverse filter is then the inverse of this rational transfer function, i.e., the numerator polynomial becomes the denominator polynomial and vice-versa, H(z) = D(z)/N(z). Then G(z)H(z) = 1. However..., the resulting filter may not be causal and/or it may not be stable. If the original function G(z) is minimum-phase, then the inverse will be causal and stable. I'm not sure where you're going with this or why you ask, so I'll stop here. -- Randy Yates Sony Ericsson Mobile Communications Research Triangle Park, NC, USA randy.yates@sonyericsson.com, 919-472-1124
I haven't modeled the curve yet.  It appears that I should be able to
model it using an IIR.  How would one go about designing a filter using
data on a response plot?


> Well, if you've modeled the curve with an IIR, then that means that > the transfer function can be specified as a rational function in z > (i.e., a ratio of polynomials in z), > > G(z) = N(z)/D(z). > > The inverse filter is then the inverse of this rational transfer > function, i.e., the numerator polynomial becomes the denominator > polynomial and vice-versa, > > H(z) = D(z)/N(z). > > Then G(z)H(z) = 1. > > However..., the resulting filter may not be causal and/or it may not > be stable. If the original function G(z) is minimum-phase, then the > inverse will be causal and stable. > > I'm not sure where you're going with this or why you ask, so I'll
stop
> here. > -- > Randy Yates > Sony Ericsson Mobile Communications > Research Triangle Park, NC, USA > randy.yates@sonyericsson.com, 919-472-1124