 
 
 
 
 
 
Re: Problem with Fourier
- To: mathgroup at smc.vnet.net
- Subject: [mg43972] Re: Problem with Fourier
- From: "Robert Nowak" <robert.nowak at ims.co.at>
- Date: Thu, 16 Oct 2003 04:16:04 -0400 (EDT)
- References: <bmj2bi$pq2$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
hello miro,
try to analyze
data4=Table[Sin[x], {x,0,2*PI,0.5}];
data5=Table[Sin[x], {x,0,4*PI,0.5}];
data6=Table[Sin[x], {x,0,6*Pi,0.5}];
for  data4 you will get your maximum at positon 2 and n because the data
represents a harmonic with the basic frequency
for  data5 you will get your maximum at positon 3 and n-1 because the data
represents a harmonic with twice the basic frequency
for  data6 you will get your maximum at positon 4and n-2because the data
represents a harmonic with tripple the basic frequency
any dc component in the data would be at position 1.
your data sets are not pure harmonic (because you truncate at a position not
equal to m*2Pi) so you get some curved spectra.
regards robert
>"Miroslav Kobas" <miroslav.kobas at mat.ethz.ch> wrote in message
news:bmj2bi$pq2$1 at smc.vnet.net...
> Hello all
>
> It seems to me that Mathematica 5.0 calculates somehow strange the
> discrete Fourier transform of a list of data, or i do not really
> understand the maths behind it.
> I would expect that the discrete Fourier transform of a finite object
> shows maxima in Fourier space at the integer reciprocal indices. But
> this does not seem to be the case in the following very simple examples.
> The first Table (data1) shows maxima in Fourier space at points 1 and
> 17, the second Table (data2) at points 3 and 20 and the third Table
> (data3) at points 4 and 39. How is this possible, shouldn't the maxima
> in Fourier space always be located at the first and last point.
> According to this, the maxima in Fourier space can be shifted by
> changing the resolution in direct space.
>
> thanks for hints
>
> miroslav kob
> as
>
> data1= Table[Sin[x], {x,0,0.5*¥ð,0.1}];
> data2=Table[Sin[x], {x,0,10,0.5}];
> data3=Table[Sin[x], {x,0,20,0.5}];
>
> ListPlot[Abs[Fourier[data1]], PlotStyle -> PointSize[0.02],
>       AxesOrigin -> {1, 0}, PlotRange -> All];
> ListPlot[Abs[Fourier[data2]], PlotStyle -> PointSize[0.02],
>       AxesOrigin -> {1, 0}, PlotRange -> All];
> ListPlot[Abs[Fourier[data3]], PlotStyle -> PointSize[0.02],
>       AxesOrigin -> {1, 0}, PlotRange -> All];
>

