DSPRelated.com
Forums

fourier transform - time domain to frequency domain and vice versa

Started by manishp October 6, 2012
Sirs,

This could be one of the most basic question. The time domain to frequency
domain transform has always confused me.

Each frequency domain sample is summation of time domain samples.
But what is confusing to me how the time domain representation is got back
based on the frequency domain samples.

My confusion stems from the fact that once I get a number by adding other
numbers, it is impossible to tell what the original numbers were. For
example, looking at number 8, it is not possible if it was got using 6+2 or
5+3.

So, what trick enables fourier transform to recover time domain samples
from the frequency domain samples even though all we have is summed
values.

Thanks, Manish 


On 2012-10-06 13:40:16 -0300, manishp said:

> Sirs, > > This could be one of the most basic question. The time domain to frequency > domain transform has always confused me. > > Each frequency domain sample is summation of time domain samples.
You forgot you mention the fact that the coeficients vary and there are lots of outputs. It is just more that the sum.
> But what is confusing to me how the time domain representation is got back > based on the frequency domain samples. > > My confusion stems from the fact that once I get a number by adding other > numbers, it is impossible to tell what the original numbers were. For > example, looking at number 8, it is not possible if it was got using 6+2 or > 5+3. > > So, what trick enables fourier transform to recover time domain samples > from the frequency domain samples even though all we have is summed > values. > > Thanks, Manish
The trick is that starting from 6 and 2 you need to know both that the sum is 8 and the difference is 4. From the sum and difference one can get the originals. There are two values before (the 6 and 2) and two values after (the sum and difference). From just the sum you can not go back. The Fourier transform is more elaborate that just the sum and difference but it has the same number of input values and output values so you can go back. But if you just say here is the sum repeted many times it does not work so you need to satisfy some conditions. Figure out how solving multiple equations works then notice that the Fourier transform is a prticular set of coefficients that allow for solving.
Am Sat, 06 Oct 2012 11:40:16 -0500 schrieb manishp:

> Sirs, > > This could be one of the most basic question. The time domain to > frequency domain transform has always confused me. > > Each frequency domain sample is summation of time domain samples. >
that is a weighted summation.
> But what is confusing to me how the time domain representation is > got back based on the frequency domain samples. > > My confusion stems from the fact that once I get a number by adding > other numbers, it is impossible to tell what the original numbers were. > For example, looking at number 8, it is not possible if it was got using > 6+2 or 5+3. > > So, what trick enables fourier transform to recover time domain samples > from the frequency domain samples even though all we have is summed > values. > > Thanks, Manish >
The trick is that we know that a number in the frequency domain represents, well, a frequency. :-) So it is not just a number (200 = sum(f(tsamples)), but 200 ***Hz***. Knowing that a sine wave has a frequency of 200 Hz allows to reconstruct every value of it. Another trick is that the FFT is based on the assumptions that (a) the N samples repeat over and over again continuously (x[i] = x[i+N]) (b) the frequencies contained in the N samples go from 0 to fsampling/2 HTH Martin
On Sun, 7 Oct 2012 12:52:17 +0000 (UTC), mblume
<foobar@invalid.invalid> wrote:

>Am Sat, 06 Oct 2012 11:40:16 -0500 schrieb manishp: > >> Sirs, >> >> This could be one of the most basic question. The time domain to >> frequency domain transform has always confused me. >> >> Each frequency domain sample is summation of time domain samples. >> >that is a weighted summation. > >> But what is confusing to me how the time domain representation is >> got back based on the frequency domain samples. >> >> My confusion stems from the fact that once I get a number by adding >> other numbers, it is impossible to tell what the original numbers were. >> For example, looking at number 8, it is not possible if it was got using >> 6+2 or 5+3. >> >> So, what trick enables fourier transform to recover time domain samples >> from the frequency domain samples even though all we have is summed >> values. >> >> Thanks, Manish
If you're familiar with the Fourier series then you know the idea that a waveform can be represented by the summation of individual sinusoids of varying frequencies, amplitudes, and phases. The DFT/FFT maps a vector into its orthogonal components, and it can be exactly mapped back to the original signal using the same.
>The trick is that we know that a number in the frequency domain represents, >well, a frequency. :-) >So it is not just a number (200 = sum(f(tsamples)), but 200 ***Hz***. >Knowing that a sine wave has a frequency of 200 Hz allows to reconstruct >every value of it. > >Another trick is that the FFT is based on the assumptions that >(a) the N samples repeat over and over again continuously (x[i] = x[i+N])
That's an often-repeated misconception.
>(b) the frequencies contained in the N samples go from 0 to fsampling/2
For a complex-valued signal the frequencies fo from -fs/2 to +fs/2. Or, equally valid, from 0 fo fs. There's actually an infinite number of support regions in a sampled system.
> > >HTH >Martin > >
Eric Jacobsen Anchor Hill Communications www.anchorhill.com
On 10/7/12 12:46 PM, Eric Jacobsen wrote:
> On Sun, 7 Oct 2012 12:52:17 +0000 (UTC), mblume > <foobar@invalid.invalid> wrote: > >> Am Sat, 06 Oct 2012 11:40:16 -0500 schrieb manishp: >> >>> Sirs, >>> >>> This could be one of the most basic question. The time domain to >>> frequency domain transform has always confused me. >>> >>> Each frequency domain sample is summation of time domain samples. >>> >> that is a weighted summation. >> >>> But what is confusing to me how the time domain representation is >>> got back based on the frequency domain samples. >>> >>> My confusion stems from the fact that once I get a number by adding >>> other numbers, it is impossible to tell what the original numbers were. >>> For example, looking at number 8, it is not possible if it was got using >>> 6+2 or 5+3. >>> >>> So, what trick enables fourier transform to recover time domain samples >>> from the frequency domain samples even though all we have is summed >>> values. >>>
i wouldn't call it a "trick" but the fact that N-1 SUM{ e^(j 2 pi nk/N) } n=0 is zero for any integer k, except k that is 0 (or an integer times N). in that case, the summation adds up to N. that is the fact (or "trick") that enables the Discrete Fourier Transform to recover the time-domain samples from the frequency-domain samples.
> > If you're familiar with the Fourier series then you know the idea that > a waveform can be represented by the summation of individual sinusoids > of varying frequencies, amplitudes, and phases. The DFT/FFT maps a > vector into its orthogonal components, and it can be exactly mapped > back to the original signal using the same. >
well, with a change of sign on "j" (which is only a matter of convention). and you have to worry a little about scaling. perhaps both the DFT and iDFT have 1/sqrt(N) in front of it, but if not, the DFT is not the same as the iDFT.
>> The trick is that we know that a number in the frequency domain represents, >> well, a frequency. :-)
well, the value of the number represents *amplitude*. the index of the bin that this number sits in represents frequency.
>> So it is not just a number (200 = sum(f(tsamples)), but 200 ***Hz***. >> Knowing that a sine wave has a frequency of 200 Hz allows to reconstruct >> every value of it. >> >> Another trick is that the FFT is based on the assumptions that >> (a) the N samples repeat over and over again continuously (x[i] = x[i+N]) > > That's an often-repeated misconception.
what's the misconception? that the FFT considers that x[n+N] = x[n] or that it's a trick?
>> (b) the frequencies contained in the N samples go from 0 to fsampling/2 > > For a complex-valued signal the frequencies fo from -fs/2 to +fs/2. > Or, equally valid, from 0 fo fs. There's actually an infinite number > of support regions in a sampled system.
we could have a discussion of what support region makes sense when comparing the contents and operation of the DFT to the FT of continuous and *real* signals. not all of those infinite number of support regions make an equal amount of sense. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
On Sat, 06 Oct 2012 11:40:16 -0500, manishp wrote:

> So, what trick enables fourier transform to recover time domain samples > from the frequency domain samples even though all we have is summed > values.
You have as many sums as you had original values, so N equations in N unknowns.
On Sun, 07 Oct 2012 18:14:16 -0400, robert bristow-johnson
<rbj@audioimagination.com> wrote:

>On 10/7/12 12:46 PM, Eric Jacobsen wrote: >> On Sun, 7 Oct 2012 12:52:17 +0000 (UTC), mblume >> <foobar@invalid.invalid> wrote: >>
> > >>> So it is not just a number (200 = sum(f(tsamples)), but 200 ***Hz***. >>> Knowing that a sine wave has a frequency of 200 Hz allows to reconstruct >>> every value of it. >>> >>> Another trick is that the FFT is based on the assumptions that >>> (a) the N samples repeat over and over again continuously (x[i] = x[i+N]) >> >> That's an often-repeated misconception. > >what's the misconception? that the FFT considers that x[n+N] = x[n] or >that it's a trick?
It is a misconception that the derivation or understanding of the DFT/FFT "assumes" or requires that the input vector repeats continuously, i.e., (x[i] = x[i+N]) I know you may disagree and I'm inclined to ignore any attempt to drag this into yet another discussion on the topic. Your views are well known. Eric Jacobsen Anchor Hill Communications www.anchorhill.com
On Sat, 06 Oct 2012 11:40:16 -0500, manishp wrote:

> Sirs, > > This could be one of the most basic question. The time domain to > frequency domain transform has always confused me. > > Each frequency domain sample is summation of time domain samples. But > what is confusing to me how the time domain representation is got back > based on the frequency domain samples. > > My confusion stems from the fact that once I get a number by adding > other numbers, it is impossible to tell what the original numbers were. > For example, looking at number 8, it is not possible if it was got using > 6+2 or 5+3. > > So, what trick enables fourier transform to recover time domain samples > from the frequency domain samples even though all we have is summed > values. > > Thanks, Manish
Well, first, you're speaking of the discrete Fourier transform, not one of the other three flavors. Second, when you perform a complete N-point DFT, you don't get one number back -- you get N independent numbers back. Finding your original N numbers from the N-point DFT is a (conceptually) simple linear algebra problem of solving N equations in N unknowns. And, in fact, if you were to express the DFT in linear algebra terms, where y = A * x and the coefficients of A were all the various sinusoids, you would find that A is always an invertable matrix, and not only that, you would find that A^-1 defines the inverse DFT to get all your x back from y. -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
Eric Jacobsen <eric.jacobsen@ieee.org> wrote:

(snip)

> It is a misconception that the derivation or understanding of the > DFT/FFT "assumes" or requires that the input vector repeats > continuously, i.e., (x[i] = x[i+N])
OK, not assumes, but it is based on the solutions to a differential equation with periodic boundary conditions.
> I know you may disagree and I'm inclined to ignore any attempt to drag > this into yet another discussion on the topic. Your views are well > known.
-- glen
Thank you very much.

> N-1 > SUM{ e^(j 2 pi nk/N) } > n=0
I have a question on the above equation. Assuming we are doing forward transform (time to frequency), for each sample in frequency domain, conceptually what varies due to the term e^(j 2 pi nk/N with change in nk/N k remains constant for a given sample in freq. domain. does nk/N have an effect of increasing frequency?/phase? as we increase n value.