Re: Maximum resolution in Fourier



On Aug 30, 7:21 pm, "Marc Kroeks" <i...@xxxxxxxxxxxx> wrote:
Question about maximum resolution in Fourier.

For a project i am asked to make an application measures the EEG with a
samplewindow of about 2 seconds and take a spectrum analysis of that with a
resolution of minimum .1 Hz. Apparently the resolution is usually given as
1/SampleLength, so in this case .5 Hz. Now my sampling device can make
recordings of with up to 2048 Hz sample rate, so I imagined that with a high
enough sample rate, there should be a way to disciminate a 8.5Hz wave from a
8.6Hz wave (we are looking at the peak energy in different ranges from 3 to
7, 7 to 13 and 13 to 20 Hz. So I came up with an algorithm that lays a sine
and a cosine wave over the sample with frequencies from 3 to 20 in steps of
.1Hz and stores the summation in an array. That seems to give some increase
in resolution, only for a single signal in the source, (eg. in source 8.3 hz
gives a peak energy at 8,3 hz exactly); when i mix two waves, the maximum
distance over which they show up separately is about .3 Hz, then the peaks
fuse.

DLLIMPORT long __stdcall MyFFT (long lNin, double dInArray[], long lNout,
double dOutArray[], double dFromHz, double dToHz, double dResolution, double
dSampleRate)
{

long i,j ;
double d, f, s, z ;
double re[lNout] ;
double im[lNout] ;

s = 0.0;

for (i = 0; i<lNout; i++)
{
d = i * dResolution + dFromHz;
re[i] = 0.0;
im[i] = 0.0;
f = (d * 2.0 * PI) / dSampleRate;
for (j = 0; j<lNin; j++)
{
z = j * f;
re[i] += dInArray[j] * cos(z);
im[i] += dInArray[j] * sin(z);
}
dOutArray[i] = sqrt(re[i] * re[i] + im[i] * im[i]);
}

return 0;

}

My question, is there a way to take a spectrum with a certain given
resolution (res Hz) when the samplelength is fixed (sl seconds) and the
samplerate (sr Hz) can be adjusted?
The idea is, that the things we are searching for last not so long, maybe a
few seconds, so that taking a longer samplelength would average that thing
out. Are "WaveLets" something that i should study for this purpose?

Looking forward to your reply,
Marc Kroeks.

Resolution of a DFT is fs/N where fs is sample rate and N is number of
samples.
Easy - work it out from that. ie you need a longer time to get more
resolution.
You could also reduce the sampling rate if you don't need a large
bandwidth.

.



Relevant Pages

  • Re: Three-phase power: Phase Estimation
    ... You'd need at least 7200 samples per cycle to get 0.1 degrees resolution I should think. ... I'm not sure you can live with a lower sample rate because the temporal resolution implied by your desired measurement is 4.63 msec or a bandwidth of around 260kHz. ...
    (comp.dsp)
  • Re: Bits and Bass
    ... frequencies under 100Hz. ... amount of knowledge of digital signals. ... In a nutshell, and simplistically speaking, the bit resolution is ... and Fso is the output sample rate. ...
    (rec.audio.tech)
  • Re: High res timer
    ... Chris Mullins, MCSD.NET, MCPD:Enterprise, Microsoft C# MVP ... beyond the 1khz/1ms resolution that .NET offers? ... Essnetially I want to monitor the parallel port for data and display it ... but I need a fast but somewhat precise way of knowing the sample rate. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Comparing FFTs of different resolutions
    ... Yes-- and without a sampling rate, we don't know the total length. ... which is all that is required to deduce resolution ... with 1 sec worth of data at sample rate F and N samples, ... The sample rate and duration are held constant for the FFTs a year apart. ...
    (comp.dsp)
  • Maximum resolution in Fourier
    ... Question about maximum resolution in Fourier. ... there should be a way to disciminate a 8.5Hz wave from a ... gives a peak energy at 8,3 hz exactly); when i mix two waves, the maximum ...
    (comp.dsp)