DSP questeion (filter design from estimated transfer function)

1 visualización (últimos 30 días)
Is there any way how to design filter (a,b coeffs) from transfer function estimated by "tfestimate"?

Respuesta aceptada

Star Strider
Star Strider el 29 de Mzo. de 2017
Not easily, if at all.
Use the Signal Processing Toolbox invfreqz function if you want filter coefficients.
  2 comentarios
Michal
Michal el 29 de Mzo. de 2017
Editada: Michal el 29 de Mzo. de 2017
Thanks ... invfreqz doing (at least theoretically) exactly what I need.
But my input transfer function is a bit oscillatory at high-frequency domain. So, result of invfreqz is sometimes unstable.
How to smooth complex transfer function?
Star Strider
Star Strider el 29 de Mzo. de 2017
My pleasure.
I am not certain what you mean by the transfer function being ‘a bit oscillatory at high-frequency domain.’ If it has high-frequency oscillations in either the time domain or frequency domain, the easiest solution would be to cascade it (in series) with a lowpass filter. That would be my first approach. Unless you create dfilt objects for both, and then use dfilt.cascade to create the cascaded filter, you would have to do this every time you used the filter. This is not necessarily a problem if you are only using your filter occasionally.
There control systems methods of stabilizing it in state-space. I have not done this in a while, and then only with continuous-time systems. (Discrete-time systems are much more difficult to work with.) This involves pole-placement techniques to move high-frequency poles further to the left of the complex frequency plane for a continuous system, or further inside the unit circle for a discrete system.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Multirate and Multistage Filters en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by