Thread View: comp.dsp
3 messages
3 total messages
Started by Kevin Kotorynski
Wed, 14 Nov 1990 19:49
Digital Filter Design
Author: Kevin Kotorynski
Date: Wed, 14 Nov 1990 19:49
Date: Wed, 14 Nov 1990 19:49
10 lines
948 bytes
948 bytes
I am trying to implement some COMPLEX transfer functions which are not minimum-phase, and I need to retain the magnitude AND PHASE characteristics of the original filter transfer function. The impulse responses are too long for realization using FIR filters, since real-time processing is required. Can any-one suggest an algorythm or some good reading to help me predict the coefficients for a direct-form filter, given the reqired impulse response or transfer function? Any suggestions welcome; please E-Mail or Post responses.
Re: Digital Filter Design
Author: Larry Kahhan
Date: Thu, 15 Nov 1990 23:11
Date: Thu, 15 Nov 1990 23:11
32 lines
1841 bytes
1841 bytes
In article <1990Nov14.194941.16247@watserv1.waterloo.edu> kevo@audiolab.uwaterloo.ca (Kevin Kotorynski) writes: >I am trying to implement some COMPLEX transfer functions which >are not minimum-phase, and I need to retain the magnitude AND >PHASE characteristics of the original filter transfer function. > >The impulse responses are too long for realization using FIR filters, >since real-time processing is required. Can any-one suggest an >algorythm or some good reading to help me predict the >coefficients for a direct-form filter, given the reqired impulse >response or transfer function? Any suggestions welcome; please >E-Mail or Post responses. MathCad will do what you want. I've used it to fit arbitray transfer functions representing IIR type filters against a complex frequency response dataset. This is probably the simplest approach. MatLab has similar capabilities using their System Identification Toolbox. Another approach would be to use an adaptive filter and let it find its own coefficients. If you're into Fortran, there is a program in the IEEE DSP collection by Andy Deczky that will also do what you want. In sum, it pretty much depends on which tools you happen to have available. I like the MathCad approach, but that's my personal preference. Larry Kahhan - NRA, NRA-ILA, CSG, GSSA , & GOA
Re: Digital Filter Design
Author: Greg Berchin
Date: Thu, 22 Nov 1990 18:08
Date: Thu, 22 Nov 1990 18:08
39 lines
2347 bytes
2347 bytes
It sounds like a good application for "Frequency Domain Least Squares" system
identification. Inputs are frequency response values (magnitude and phase) at
a number of discrete frequencies from DC to one-half the sampling frequency
(for filters having real coefficients), or from DC to the sampling frequency
(for filters having complex coefficients). Outputs are coefficients of a
transfer function of the form:
-1 -n
b + b z + ... + b z
0 1 n
H(z) = --------------------------
-1 -m
1 + a z + ... + a z
1 m
Causality is assumed, stability is not necessary. You have total control over
"m" and "n", so you can model an all-zero system, an all-pole system, or a
pole-zero system. Both magnitude and phase are modeled. The algorithm is
VERY good at finding discrete equivalents for continuous-domain filters, which
is what it sounds like you are trying to do.
Your friendly university library should have, or be able to get, these:
G. Berchin, R. Roberts, and M.A. Soderstrand; "A New Model-Based Parameter
Estimation Technique for Use in Deconvolution"; Proceedings of the 1986
Asilomar Conference on Signals, Systems, and Computers; Pacific Grove, CA,
November 1986.
G. Berchin, M.A. Soderstrand, and R. Roberts; "Deconvolution Using
Model-Based Parameter Estimation", Proceedings of the 30th Midwest
Symposium on Circuits and Systems; Syracuse NY, August 1987.
G. Berchin and M.A. Soderstrand; "A Total Least-Squares Approach to
Frequency Domain System Identification"; Proceedings of the 32nd Midwest
Symposium on Circuits and Systems; Urbana IL, August 1989.
If not, or if you need any help with the algorithm, contact me through the net.
Greg Berchin
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads