how to use ha.coefficients for a filter?
Show older comments
I am using the code below which works but if I try to filter the input with the ha.coefficients I don't get the desired signal. How do I use the coefficients and the matlab filter command to filter the input stored in xx to get the desired output d?
mu=.008; ha = adaptfilt.lms(250,mu); [yy,e] = filter(ha,xx(1:250),d);
I tried to desired = filter(ha.coefficients,1,xx(1:250));
Answers (1)
Honglei Chen
on 10 Feb 2015
1 vote
It's an adaptive filter so the coefficients changes at every step. The Coefficients only contains the initial coefficients. In addition, the setup for adaptive filter is often in a vectorized form so filter is often carried out using matrix multiplication than the difference equation implemented in the filter command.
2 Comments
Honglei Chen
on 11 Feb 2015
What version do you have? You can try the new dsp.LMSFilter which you can get the the coefficients by set WeightsOutputPort to true. But nevertheless, I don't think you want to use filter with those coefficients, you should just use in matrix multiplication.
Categories
Find more on Adaptive Filters in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!