Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Fourier Frequency Identification

  1. Nov 25, 2009 #1
    I am a high school physics teacher and was thinking of demonstrating to students how frequencies of complex waveforms such as notes of instruments can be identified using a Fourier transform.

    I haven't done Fourier transforms for a while and was quickly re-reading about them earlier this evening.

    Essentially what I was after is given some data (collected using a data logger and microphone etc) or as an example a series of points generated from t=0 to t=10 in steps of 0.1 of 2 Sin[x + 1] + 2 Sin[3 x] + 2 Sin[4.6 x + 3]. Plotting this in Mathematica gives me a nice looking waveform.

    If I then do a Fourier transform on the data produced using Fourier[data], Mathematica produces a Table of complex numbers.

    Can someone please help me take these complex numbers and transform them into frequency information?

    I attempted to do something like ListLinePlot[Abs[Fourier[data]], PlotRange -> All] but it produced a strange looking Plot which was nothing like I was expecting.


  2. jcsd
  3. Nov 27, 2009 #2


    User Avatar
    Staff Emeritus
    Science Advisor
    Homework Helper

    I recommend using some simple trial functions, and seeing what you get for a spectrum. Something like sin(2πt), which has a frequency of 1 Hz (for t measured in seconds). See where the non-zero number(s) is/are in the spectrum; this corresponds to an amplitude of 1 at a frequency of 1 Hz.
    Also try the function f(t)=1, to see how a 0-Hz (DC) signal is transformed. Keep things simple until you understand how the frequency and amplitude is related to the output. Then you can put more complicated signals in and know what the output signifies.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook