help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: freqz / postpad problem


From: Quentin Spencer
Subject: Re: freqz / postpad problem
Date: Sun, 16 Apr 2006 01:02:47 -0500
User-agent: Thunderbird 1.5 (X11/20060313)

Dmitri A. Sergatskov wrote:
I found a buglet in freqz (octave 2.9.4, Quentin's  rpm for Fedora Core 5).
"test freqz" fails with the following error:

octave:57> test freqz
  ***** test # whole-half consistency
 b = [1 1 1]/3; # 3-sample average
 [h,w] = freqz(b,1,32,'whole');
 assert(h(2:16),conj(h(32:-1:18)),20*eps);
 [h2,w2] = freqz(b,1,16,'half');
 assert(h(1:16),h2,20*eps);
 assert(w(1:16),w2,20*eps);
!!!!! test failed
error: quotient: nonconformant arguments (op1 is 1x32, op2 is 32x1)

The culprit is the follqwing code (lines 134 and 135 in freqz.m):


    hb = fft (postpad (b, n));
    ha = fft (postpad (a, n));

(and later)

    h = hb ./ ha;

The problem here is that when b is a vector (e.g. 1:m) postpad
and consecuetly fft return 1:n vector as well, but if a is just a number
then postpad (and fft later) return n:1 vector.

I really do not know what would be the best fix. In particular I am
not sure that postpad behavior is OK.

Try out the CVS version of freqz--it should fix your problems. I think I reported this same bug a while ago on the 2.1.x branch. The freqz function had quite a few changes made to it recently, but apparently after 2.9.4. I suppose the best fix for this would be a 2.9.5 release for Fedora. The reason I hadn't done that yet was that the current octave-forge release has the old behavior for the system function, so it shouldn't really be used for 2.9.5 or later. I could try patching it, but I thought a new release would be easier. Anyway, I'll figure something out soon, but it's getting late for me to do it today.

-Quentin



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]