algorithm for implementing IIR digital filter chebyshev type I low pass

5 views (last 30 days)
hello everyone, i am trying to implement the 'decimate' function in C. through matlab documentation, i found the data are filtered through chebyshev type I low pass filter. FDAToolbox gives me the SOS matrix and scale values of the required filter, but i dont understand how to use them. in fact i dont know what they are. please help me with algorithm or theory. any help is appreciated

Answers (2)

Honglei Chen
Honglei Chen on 16 Dec 2013
Edited: Honglei Chen on 16 Dec 2013
The following document may be helpful to you. SOS is just a different way to implement filters, but it provides better numerical stability in practice.
HTH
  1 Comment
morshed haque
morshed haque on 17 Dec 2013
thank you for your response. it was really helpful for me. but i think i have very little idea about digital filters, which does not give me a clear view. may i get a little more help from here? I have specified my question a little more. could you have a look to help me out. thanks again

Sign in to comment.


morshed haque
morshed haque on 17 Dec 2013
I am specifying my problem a little more. i want to implement a Chebyshev type I filter in C. fdatoolbox gives me
SOSMatrix sos=
[ 1.0000 2.0000 1.0000 1.0000 -1.1469 0.9449;
1.0000 2.0000 1.0000 1.0000 -1.2597 0.8424;
1.0000 2.0000 1.0000 1.0000 -1.4695 0.7549;
1.0000 2.0000 1.0000 1.0000 -1.6396 0.7005 ]
my scale values are:
scale=
[ 0.1995;
0.1457;
0.0713;
0.0152;
0.8913 ]
should be the eqn of output y(n) if x is my input?

Community Treasure Hunt

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

Start Hunting!