My question is regarding one of the examples in the Documentation Center for the built-in symbol Fourier:

Fourier | Examples | Applications | Frequency Identification

Fourier is used to find the dominant frequency. To get a more precise value the following code is used:

fr = Abs[Fourier[pdata Exp[2 Pi I (pos - 2) N[Range[0, n - 1]]/n], 
FourierParameters -> {0, 2/n}]];

Now the dominant mode is (pos-1), and this searches for N modes between (pos-2) and (pos). I can see that it works, I have been rewriting formulas for a while but I just don't understand:

  • with N data point you get N fourier coefficients, how can we generate a higher resolution around one of these modes
  • are we calculating redundant modes or something like it, just to see which one fits the most with our data?

Apparently all data gets multiplied with a list of all modes we wish to examine

  • is this just a trick to get the Fourier function see what mode fits best?

Kind regards,


Edit: clarified location of code

  • $\begingroup$ I can't find the document you are mentionning : "Fourier | Applications | Frequency Identification" in the Documentation Center $\endgroup$ – andre314 Dec 27 '17 at 17:14
  • $\begingroup$ I open Documentation Center, search for the Fourier function (top hit) and go to that page; on the bottom (under Examples) is Applications, if you open that you will find Frequency Identification with the example I mentioned. $\endgroup$ – Jack Dec 28 '17 at 14:56
  • $\begingroup$ Using a small value for the second element of FourierParameters gives you a transform with finer frequency resolution but a low maximum frequency (like "zooming in" on the low frequency part of the spectrum). To make use of this it's necessary to do frequency conversion on the original signal, to shift the peak into that low frequency window. That's what's happening when you multiply pdata by the pure frequency signal. $\endgroup$ – Simon Woods Dec 28 '17 at 17:42
  • $\begingroup$ Thank you, what you say makes sense to me, it does shift my question: pdata get's multiplied by the pure frequency signal, to me that would be ` Exp[2 Pi I (pos - 2) ` without N[Range[0, n - 1]]/n]. I might not understand what exactly mathematically you mean by pure function, or how data gets shifted along the frequency axis. I hope you can clarify. $\endgroup$ – Jack Dec 28 '17 at 18:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.