Tue 01 Oct 2013 01:17:39 PM UTC, original submission:
I am using the eziir32.m script designed by TI to create iir filter coefficients for use with the TI libraries. They were designed to run under Matlab, but they also run under Octave, using the signals package. There are two problems I have noticed:
1. Some runs of the script cause errors in the Octave environment and produce valid results in the Matlab environment.
2. Some runs of the script produce valid, but very different results in the two environments.
My big issue is with choice number 2 because the results are very different, and are causing representation and overflow issues in the code written using the libraries. I have attached a file which contains the results of a Matlab and an Octave run for the same script inputs. The Matlab run normalizes the filter gain to 1 and scales the coefficients accordingly. The Octave run gives me a gain of over 1100 and totally different coefficients.
I need to get the normalized output to keep the filter representation from losing accuracy due to rounding. A few questions come to mind:
1. What is different between the two packages that cause the large differences in the results created?
2. Are there steps that can be taken to normalize the Octave output and supply a set of coefficients similar to those from Matlab?
3. Is the signal package compatible with Matlab, or similar to Matlab when using the functions in the script.
Can someone please contact me to discuss this. I do not have Matlab and I am relying on Octave to provide me with the coefficients for my filters. I need to know how to successfully get workable values in a normalized form.
Sincerely,
Mike Fontes
-unavailable-
|