MATLAB Answers

What is the difference between filter and conv?

49 views (last 30 days)
njj1
njj1 on 6 Mar 2018
Edited: Honglei Chen on 7 Mar 2018
I am trying to design a predictive AR filter using aryule. The code looks like this:
h = aryule(signal,order);
est_signal1 = filter(1,h,signal);
est_signal2 = conv(-h(2:end),signal);
When I do this, the est_signal1 has a different amplitude than the original (generally larger). However, est_signal2 is much more similar (so long as you cut off the final 'order' number of entries). But the AR model is an all pole filter, so using filter(1,h,signal) should work the same as conv(-h(2:end),signal), right?

Answers (2)

Honglei Chen
Honglei Chen on 7 Mar 2018
Edited: Honglei Chen on 7 Mar 2018
I don't know the detail about your signal. But if the question is between filter and conv, they are only similar when you talk about FIR filters. For an IIR filter, they are different. The example you listed above in general should not give you the same answer.

Abhishek Ballaney
Abhishek Ballaney on 7 Mar 2018
https://in.mathworks.com/help/matlab/ref/filter.html
https://in.mathworks.com/help/matlab/ref/conv.html

Community Treasure Hunt

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

Start Hunting!