How to get the filter coefficients in the double format.
Show older comments
I'm using the fdesign.parameq() function to make an equalizer. In order to automate the filter generation process, I would like to assign the coefficients that the design() funktion produces to variables. However, the coefficients in the sosMatrix are somewhat truncated. I want to get those coefficients in the double format. I cannot find a way to do this. Does someone have a solution to this?
Thank's
Answers (2)
Walter Roberson
on 27 Feb 2013
Did you try giving the command
format long g
at the command line, and then displaying the values?
Honglei Chen
on 27 Feb 2013
Do you want to simply display or you want the coefficients themselves? If you want only the display, then Walter's solution above will do, if you want the coefficients themselves, then you can access those number by
d = fdesign.parameq('N,Flow,Fhigh,Gref,G0,GBW,Gst',4,.3,.5,0,-12,-10,-1);
Hd = design(d,'cheby2');
sosmat = Hd.sosMatrix
sval = Hd.ScaleValues
2 Comments
Lugo Teehalt
on 27 Feb 2013
Honglei Chen
on 27 Feb 2013
sosmat and sval is the variable you need. They look truncated only because your display format is short. If you do what Walter mentions above, they will show the full precision. Try the following command
format long g
sosmat
sval
Then you can copy them to your header file.
Categories
Find more on Debugging and Analysis 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!