How can Discrete Fourier Transform yield negative frequencies

fourier transform

(This question is about an answer on Mathematica, but is about purely mathematical concepts, so I found it was more appropriate to ask it here rather than on Mathematica.)

I'm trying to challenge myself into drawing any shape using Discrete Fourier's Transform and epicycles (like this example).

This answer on Mathematica does exactly what I want, however there's something I can't get my head to work with. Here's what I achieved and understood so far :

  • To map an arbitrary shape into a series of epicycles, I'm using a Discrete Fourier Transform. This transformation will give an array of complex numbers that I will map to an array of epicycles (Each complex number is an epicycle).
  • As per the mathematical definition of Discrete Fourier Transform, each of these epicycleswill have a frequency that ranges from 0 up to the number of samples I have in input (e.g. 100 input samples in DFT will yield 100 complex numbers, hence 100 epicycles, each having a frequency from 0 to 100).
  • The frequency of an item is mapped to the orbit of the epicycle. A frequency of 0 means 0 rotation per unit of time. A frequency of 20 means 20 rotations per unit of time.
  • Since those frequencies have a range [0;inf] that means all the epicycles spin either clockwise or anti-clockwise (the DFT doesn't yield negative indexes).

With all that in mind, I cannot understand why the animation in the aformentioned question shows some epicycles spinning clockwise, and some other spinning anticlockwise.

This doesn't make sense to me since DFT yields only complex numbers that map to frequencies ranging from 0 to +inf.

Best Answer

A counterclockwise rotation $\omega$ rad is equivalent to a clockwise rotation of $2\pi - \omega$. This effect is similar to seeing the spokes of a bicycle wheel run backward as $\omega\mod 2\pi$ approaches $2\pi$.

Related Question