[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Does "remez" work for anyone?
From: |
Mike Miller |
Subject: |
Re: Does "remez" work for anyone? |
Date: |
Wed, 18 Dec 2013 12:35:34 -0500 |
On Wed, Dec 18, 2013 at 08:53:37 -0800, briankaz wrote:
> Hello,
>
> No matter what I do the "remez" function either gives me the "insufficient
> extremals--cannot continue" error OR "failed to converge -- returned filter
> may be bad" and indeed it is very very bad.
> I am using Octave 3.6.4_gcc4.6.2 on a Windows 7 PC.
> control-2.6.1
> general-1.3.2
> signal-1.2.2
> specfun-1.1.0
>
> Here is a simple test case (low-pass filter):
>
> N = 32;
> f = [0 40/(96*N) 152/(96*N) 1];
> a = [1 1 0 0];
> w = [1/(1-10^(-0.1/20)) 1/(10^(-120/20))];
> b = remez(32*N,f,a,w)
> warning: remez: -- failed to converge -- returned filter may be bad.
> b =
>
> 3.4963e-313
> 3.7812e-313
> 3.2352e-313
> 3.9098e-313
>
> I didn't print out all the coefficients but suffice it to say that they
> range from -8.17e-313 to 6.7045e-313.
>
> Does anyone have any solution for getting remez to work? It seems I'm not
> the only one on this forum to have problems with remez but I haven't seen a
> solution. I'm usually very satisfied with Octave's results but this remez
> function is proving to be a huge exception.
Here is an even simpler test case that does work for me:
f = [0 0.1 0.15 1];
a = [1 1 0 0];
w = [1 1];
b = remez (32, f, a, w);
So yes, it does work, but I agree that it's not working for your
tighter filter requirements. Please feel free to file a bug report
with these details, and a patch to improve its functionality would be
even more welcome.
Are you able to check if Matlab's firpm function gives good results
with the filter specifications you listed here?
--
mike