Converting 4th order IIR filter to SOS (second-order sections)

11 vues (au cours des 30 derniers jours)
Jay
Jay le 15 Nov 2023
Commenté : Jay le 15 Nov 2023
I've designed 4th order allpass IIR filter using 'iirgrpdelay' and have the numerator and denominator which are 1-by-5 vectors. Now I want to convert this filter to (biquad) second-order sections (SOS), e.g., cascades of two SOS filters. I've tried with..
(1) dsp.SOSFilter but the function only takes an array with number of columns equal to 3.
(2) Construct allpass filter with 'Hd = dfilt.allpass(num)' and try to convert to 'df2sos', e.g., convert(Hd, 'df2sos').
None of them works for me, unfortunately.
Any function does this? Or any methology of implementing from a higher order IIR filters (e.g., Order N >= 4) to cascades of several SOS filters?

Réponse acceptée

Paul
Paul le 15 Nov 2023
Does tf2sos provide the desired result?
  1 commentaire
Jay
Jay le 15 Nov 2023
Thanks Paul, this is indeed what I have been looking for.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by