help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

sosfit in filter function


From: Renato S. Yamane
Subject: sosfit in filter function
Date: Tue, 8 May 2018 22:34:05 +0200

Hi,

There is a numerical instability on butter function, as described in https://www.mathworks.com/help/signal/ref/butter.html (topic "Limitations").

Is recommend use [z, p, k] syntax and sosfilt function to apply a second-order section filter, as described in https://savannah.gnu.org/bugs/?53855

But, the documentation of SOSFILT is not clear: https://octave.sourceforge.io/signal/function/sosfilt.html

Someone have an idea about how to use ZPK Design instead a TF Design in this code below?

+++++++++++++
n = 5;
hpf = 50;
lpf = 10*hpf;
sampling_rate = 44100;

typenoise = noise(60*sampling_rate, 1, 'pink');
[b,a] = butter(n, [hpf/(sampling_rate/2), lpf/(sampling_rate/2)]);
filtered = filter(b, a, typenoise);
audiowrite (filename.wav, filtered, sampling_rate);

freqz (b, a, 4096, sampling_rate)
ax = findall (gcf, 'type', 'axes');
set (ax, 'xlim', [hpf/4 lpf*4]);
set (ax, 'xscale', 'log');
subplot (2, 1, 1);
set (gca, 'ylim', [-35 3]);
-----------------------------

Best regards,
Renato


reply via email to

[Prev in Thread] Current Thread [Next in Thread]