error with using filter

6 visualizzazioni (ultimi 30 giorni)
pietro
pietro il 19 Set 2014
Modificato: Gustavo Machado il 10 Giu 2019
Hi all,
I have to filter few signals and I wrote the following code:
Fpass = 40; % Passband Frequency
Fstop = 45; % Stopband Frequency
Apass = 1; % Passband Ripple (dB)
Astop = 80; % Stopband Attenuation (dB)
Fs = 100; % Sampling Frequency
h = fdesign.lowpass('Fp,Fst,Ap,Ast', Fpass, Fstop, Apass, Astop, Fs);
Hd = design(h, 'butter','MatchExactly', 'stopband','SystemObject', true);
a=rand(1000,1);
a=filter(Hd,a);
I get the following error:
Undefined function 'filter' for input arguments of type 'dsp.BiquadFilter'.
Why do I get that error?
Thanks
Regards
Pietro

Risposta accettata

Honglei Chen
Honglei Chen il 19 Set 2014
dsp.BiquadFilter is a System object, so its main method is step(). Try
a = step(Hd,a)
  1 Commento
Gustavo Machado
Gustavo Machado il 10 Giu 2019
Modificato: Gustavo Machado il 10 Giu 2019
Honglei, I've encountered the same problem Pietro had and used step() to apply the filter, but the filter was inefficient, seems like it didn't filter the data.
I've posted a question regards my problem. I used the sosfilt(Hd.SOSMatrix) to filter my data but came across the problem described in this topic: https://www.mathworks.com/matlabcentral/answers/466353-difference-between-fvtool-filterobject-and-fvtool-filterobject-sosmatrix
I'd highly appreaciate if you could take a look at it.
Thanks in advance,
Gustavo

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by