Roughly: I have a model in an FIR form that I would like to change to
an IIR form (for various reasons that I'll spare you from). I'm
interested in finding the "nearest" IIR filter of order N to some
given FIR filter ("nearest" meaning in some reasonable metric). Are
there any standard approaches to this or should I just clobber away
and see what happens if I try this in some minimization formulation
under some aptly chosen norm?
i.e. given y_t = h * x_t (where h is the FIR impulse response)
I'd like to approximate as closely as possibly this with
y_t = a*y_(t-1) + b*x_t
where the length of b is substantially smaller than the length of h,
perhaps 1, perhaps arbitrarily specified by me
and the length of a is specified by me.
Any thoughts?
Thanks,
Chris
Nearest IIR System to FIR?
Started by ●December 4, 2007
Reply by ●December 4, 20072007-12-04
Chris Maryan <kmaryan@gmail.com> writes:> Roughly: I have a model in an FIR form that I would like to change to > an IIR form (for various reasons that I'll spare you from). I'm > interested in finding the "nearest" IIR filter of order N to some > given FIR filter ("nearest" meaning in some reasonable metric). Are > there any standard approaches to this or should I just clobber away > and see what happens if I try this in some minimization formulation > under some aptly chosen norm? > > i.e. given y_t = h * x_t (where h is the FIR impulse response) > I'd like to approximate as closely as possibly this with > y_t = a*y_(t-1) + b*x_t > where the length of b is substantially smaller than the length of h, > perhaps 1, perhaps arbitrarily specified by me > and the length of a is specified by me. > > Any thoughts? > > Thanks, > > ChrisYou might try applying the FDLS algorithm (frequency domain least squares). -- % Randy Yates % "...the answer lies within your soul %% Fuquay-Varina, NC % 'cause no one knows which side %%% 919-577-9882 % the coin will fall." %%%% <yates@ieee.org> % 'Big Wheels', *Out of the Blue*, ELO http://www.digitalsignallabs.com
Reply by ●December 4, 20072007-12-04
On 4 Des, 06:02, Chris Maryan <kmar...@gmail.com> wrote:> Roughly: I have a model in an FIR form that I would like to change to > an IIR form (for various reasons that I'll spare you from). I'm > interested in finding the "nearest" IIR filter of order N to some > given FIR filter ("nearest" meaning in some reasonable metric). Are > there any standard approaches to this or should I just clobber away > and see what happens if I try this in some minimization formulation > under some aptly chosen norm? > > i.e. given y_t = h * x_t (where h is the FIR impulse response) > I'd like to approximate as closely as possibly this with > y_t = a*y_(t-1) + b*x_t > where the length of b is substantially smaller than the length of h, > perhaps 1, perhaps arbitrarily specified by me > and the length of a is specified by me.I don't know how to approximate a given FIR by an IIR. However, if the FIR was designed based on some specification I would go back and design an IIR from the same spec. If the FIR is based on some empirical data (like some measured signal) the prolem becomes a lot harder. Rune
Reply by ●December 4, 20072007-12-04
On Dec 3, 11:02 pm, Chris Maryan <kmar...@gmail.com> wrote:> Roughly: I have a model in an FIR form that I would like to change to > an IIR form (for various reasons that I'll spare you from). I'm > interested in finding the "nearest" IIR filter of order N to some > given FIR filter ("nearest" meaning in some reasonable metric). Are > there any standard approaches to this or should I just clobber away > and see what happens if I try this in some minimization formulation > under some aptly chosen norm? > > i.e. given y_t = h * x_t (where h is the FIR impulse response) > I'd like to approximate as closely as possibly this with > y_t = a*y_(t-1) + b*x_t > where the length of b is substantially smaller than the length of h, > perhaps 1, perhaps arbitrarily specified by me > and the length of a is specified by me. > > Any thoughts? > > Thanks, > > ChrisChris, Do you need to have the linear phase response that a FIR filter provides? Darol Klawetter
Reply by ●December 4, 20072007-12-04
No linear phase requirement, or any other stringent system requirement for that matter, except model order which I would like as a parameter to play with. The issue is that I have empirically measured FIRs, and for reasons of ease of modeling, need an IIR equivalent, so to answer Rune's question, yes, it's harder. Chris On Dec 4, 12:35 am, Darol Klawetter <darol.klawet...@l-3com.com> wrote:> On Dec 3, 11:02 pm, Chris Maryan <kmar...@gmail.com> wrote: > > > > > Roughly: I have a model in an FIR form that I would like to change to > > an IIR form (for various reasons that I'll spare you from). I'm > > interested in finding the "nearest" IIR filter of order N to some > > given FIR filter ("nearest" meaning in some reasonable metric). Are > > there any standard approaches to this or should I just clobber away > > and see what happens if I try this in some minimization formulation > > under some aptly chosen norm? > > > i.e. given y_t = h * x_t (where h is the FIR impulse response) > > I'd like to approximate as closely as possibly this with > > y_t = a*y_(t-1) + b*x_t > > where the length of b is substantially smaller than the length of h, > > perhaps 1, perhaps arbitrarily specified by me > > and the length of a is specified by me. > > > Any thoughts? > > > Thanks, > > > Chris > > Chris, > > Do you need to have the linear phase response that a FIR filter > provides? > > Darol Klawetter
Reply by ●December 4, 20072007-12-04
On Dec 4, 12:17 am, Rune Allnor <all...@tele.ntnu.no> wrote:> On 4 Des, 06:02, Chris Maryan <kmar...@gmail.com> wrote: > > > Roughly: I have a model in an FIR form that I would like to change to > > an IIR form (for various reasons that I'll spare you from). I'm > > interested in finding the "nearest" IIR filter of order N to some > > given FIR filter ("nearest" meaning in some reasonable metric). Are > > there any standard approaches to this or should I just clobber away > > and see what happens if I try this in some minimization formulation > > under some aptly chosen norm? > > > i.e. given y_t = h * x_t (where h is the FIR impulse response) > > I'd like to approximate as closely as possibly this with > > y_t = a*y_(t-1) + b*x_t > > where the length of b is substantially smaller than the length of h, > > perhaps 1, perhaps arbitrarily specified by me > > and the length of a is specified by me. > > I don't know how to approximate a given FIR by an IIR. > However, if the FIR was designed based on some specification > I would go back and design an IIR from the same spec. > > If the FIR is based on some empirical data (like some measured > signal) the prolem becomes a lot harder. > > RuneThanks, but to put it in your terms, it's harder (empirically measured responses). For "historical reasons" I have them in an FIR form, but I would like to try modeling the system as an IIR. Chris
Reply by ●December 4, 20072007-12-04
Thanks for the tip on FDLS, I'll have a look at that. Do you have any favourite papers on FDLS? Chris On Dec 4, 12:06 am, Randy Yates <ya...@ieee.org> wrote:> Chris Maryan <kmar...@gmail.com> writes: > > Roughly: I have a model in an FIR form that I would like to change to > > an IIR form (for various reasons that I'll spare you from). I'm > > interested in finding the "nearest" IIR filter of order N to some > > given FIR filter ("nearest" meaning in some reasonable metric). Are > > there any standard approaches to this or should I just clobber away > > and see what happens if I try this in some minimization formulation > > under some aptly chosen norm? > > > i.e. given y_t = h * x_t (where h is the FIR impulse response) > > I'd like to approximate as closely as possibly this with > > y_t = a*y_(t-1) + b*x_t > > where the length of b is substantially smaller than the length of h, > > perhaps 1, perhaps arbitrarily specified by me > > and the length of a is specified by me. > > > Any thoughts? > > > Thanks, > > > Chris > > You might try applying the FDLS algorithm (frequency domain least squares). > -- > % Randy Yates % "...the answer lies within your soul > %% Fuquay-Varina, NC % 'cause no one knows which side > %%% 919-577-9882 % the coin will fall." > %%%% <ya...@ieee.org> % 'Big Wheels', *Out of the Blue*, ELOhttp://www.digitalsignallabs.com
Reply by ●December 4, 20072007-12-04
On 4 Des, 07:12, Chris Maryan <kmar...@gmail.com> wrote:> No linear phase requirement, or any other stringent system requirement > for that matter, except model order which I would like as a parameter > to play with. The issue is that I have empirically measured FIRs, and > for reasons of ease of modeling, need an IIR equivalent, so to answer > Rune's question, yes, it's harder.What kind of modeling would this be? Do you have to do the modeling in time domain? Could you save some FLOPs by doing the modeling in frequency domain? Rune
Reply by ●December 4, 20072007-12-04
Chris Maryan <kmaryan@gmail.com> writes:> Thanks for the tip on FDLS, I'll have a look at that. Do you have any > favourite papers on FDLS?Greg Berchin is the acknowledged expert on it - he sticks his head in here often so you can probably ask him questions directly. But here is what I've used: @article{berchin, title = "{Precise Filter Design}", author = "Greg Berchin", journal = "IEEE Signal Processing Magazine", month = "January", year = "2007"} --Randy> > Chris > > On Dec 4, 12:06 am, Randy Yates <ya...@ieee.org> wrote: >> Chris Maryan <kmar...@gmail.com> writes: >> > Roughly: I have a model in an FIR form that I would like to change to >> > an IIR form (for various reasons that I'll spare you from). I'm >> > interested in finding the "nearest" IIR filter of order N to some >> > given FIR filter ("nearest" meaning in some reasonable metric). Are >> > there any standard approaches to this or should I just clobber away >> > and see what happens if I try this in some minimization formulation >> > under some aptly chosen norm? >> >> > i.e. given y_t = h * x_t (where h is the FIR impulse response) >> > I'd like to approximate as closely as possibly this with >> > y_t = a*y_(t-1) + b*x_t >> > where the length of b is substantially smaller than the length of h, >> > perhaps 1, perhaps arbitrarily specified by me >> > and the length of a is specified by me. >> >> > Any thoughts? >> >> > Thanks, >> >> > Chris >> >> You might try applying the FDLS algorithm (frequency domain least squares). >> -- >> % Randy Yates % "...the answer lies within your soul >> %% Fuquay-Varina, NC % 'cause no one knows which side >> %%% 919-577-9882 % the coin will fall." >> %%%% <ya...@ieee.org> % 'Big Wheels', *Out of the Blue*, ELOhttp://www.digitalsignallabs.com >-- % Randy Yates % "...the answer lies within your soul %% Fuquay-Varina, NC % 'cause no one knows which side %%% 919-577-9882 % the coin will fall." %%%% <yates@ieee.org> % 'Big Wheels', *Out of the Blue*, ELO http://www.digitalsignallabs.com
Reply by ●December 4, 20072007-12-04
No need to save flops, this is off line. That said, the FDLS approach mentioned looks promising, I think in general this is turning out to be a job for a generic fit a filter to an arbitrary frequency response kind of thing. I had perhaps hoped that there was something out there to turn my numerator into a denominator in a more 'direct' way. Thanks, Chris On Dec 4, 1:19 am, Rune Allnor <all...@tele.ntnu.no> wrote:> On 4 Des, 07:12, Chris Maryan <kmar...@gmail.com> wrote: > > > No linear phase requirement, or any other stringent system requirement > > for that matter, except model order which I would like as a parameter > > to play with. The issue is that I have empirically measured FIRs, and > > for reasons of ease of modeling, need an IIR equivalent, so to answer > > Rune's question, yes, it's harder. > > What kind of modeling would this be? Do you have to do the > modeling in time domain? Could you save some FLOPs by > doing the modeling in frequency domain? > > Rune






