Re: Imaginary values non-null in FFTW Java wrapper real transform



SeanOg wrote:

Hi all,

I was hoping someone could shed some light on this problem Im having. Ill
be as clear as possible.

Im using the Java JNI wrapper for FFTW. The problem I am having is
regarding the imaginary components being returned from a real to complex
tranform.

As I understand it, the format of the array returned by the FFTW real to
complex transform is (for an even N length signal);

[dc][r1][r2][r3][r4][ny][i4][i3][i2][i1]

where dc = direct component
ny = nyquist
and
(rx, ix) are the various imaginary numbers

If I input a pure cosine wave of fHz, I would assume that all the [ix]
elements of the array would be zero or close enough. However I'm getting
some non-trivial values in the imaginary parts of the array.

I'm at a total loss as to why this is. Are any of my assumptions incorrect
or has anyone had similar experiences?

Thanks in advance!

Sean

An FFT of a totally real input signal will, in general, return results with nonzero real and imaginary parts. If the input signal has even symmetry around 0 then the FFT should be all real, if it has odd symmetry around 0 then the FFT should be all imaginary.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google? See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
.



Relevant Pages

  • Re: phase of fft of random autocorrelation is deterministic...why?
    ... symmetry around the origin. ... you love Matlab?) ... the fft would be entirely real...but how does that answer my question? ... Wescott Design Services ...
    (comp.dsp)
  • Re: Fundamental frequency -- limited resources
    ... Memory is the biggest ... > constraint, the processor horsepower is not as big a constraint. ... > The reality is that the array will actually hold values like ....4200, ... > keep thinking, "if I could just do an FFT and take the dominant freq, ...
    (sci.math.num-analysis)
  • Re: Confusion about 2D DFTs
    ... horizontal axis and pretty much centred, ... Deconvolution is tricky business at the best of times. ... 0), IFFT and convolve in the space-domain, or I could FFT the image to ... The trick is to use circular symmetry around origo. ...
    (comp.dsp)
  • Re: dft : property of symmetry for real & even seq
    ... The "origin" is the first element of the array (really the 0th ... That is, if the array indices start with 0, then the frequency axis ... large extent and if one needs to calculate DFT using, ... to strictly follow DFT symmetry so that zero padding are done ...
    (comp.dsp)
  • Re: Restricting equivalent solutions inside the search (B-Prolog)
    ... So there is no general method to program this symmetry breaking... ... a location in the NxN array under the group action. ... can have locations with orbits of size 1,2,4, and 8. ...
    (comp.lang.prolog)