As Martin said, a rect window makes sense, when you want to keep *all*
the properties of the signal vector.
You experience leakage, but in fact, leakage is just a concept that
refers to the input vector as a representation of a signal. And one
chooses to use a window to reduce leakage, because for many aspects,
leakage distorts what you want the signal to be.
However, from a mathematical perspective, the DFT (of which FFT is only
a class of clever implementations) is only a mapping between two vector
spaces (or even within the same vector space, if you want so). "Leakage"
is no defect here; the transform of a vector is just the value that
specific vector maps to. If you want to reverse that mapping, you apply
the IDFT (IFFT) to the mapped vector; and it doesn't care about leakage
etc, it just reproduces the original vector from the mapped one.
I have a rule of thumb:
If I consider the FFT as a bijective mapping between two vector spaces,
and the IFFT as the inverse, then I don't want windowing.
If I, however, look at the FFT as a means to get the spectrum of a
signal that has temporal properties, then, of course, I choose a window
to avoid leakage, because I look at the DFT as a means to get a good
estimate of the spectrum of a signal from a limited time sequence of
samples.
In communications, you usually need to avoid leakage, thus you usually
window the signal. That, however, might break reversibility of the
transform.
Greetings,
Marcus
On 18.11.2013 14:34, Martin Braun (CEL) wrote:
On Mon, Nov 18, 2013 at 08:22:08AM -0500, Robert James wrote:
Wow, switching to a rectangular window of fft_size solved it! I'm
baffled: I know windows are a way of pretransforming the wave prior to
FFT, to eliminate artifacts. I just used the default window. Why did
I need a rectangular window here? In what other cases do I need it?
If you want to keep all the properties of the signal, you need a rect
window. What you did was: apply a window, then do an FFT, apply the
window again, do an IFFT. Obviously, you're distorting the signal
every time you do the (I)FFT. A boxcar window won't change the signal.
For spectral analysis or filter design, you typically use other windows.
MB
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio