Inverse Fourier Transform of Swarm Data September 24th, 2009
Patrick Stein

Inspired by Neil Baylis’s Blob Thing program that I talked about previously, I made some Fourier Transform art of my own.

Take a leader-bee in five-dimensional space. Give him a place to go in five-dimensional space. When he gets close to his destination, move his target spot. Have ten follower-bees try to follow him. The follower-bees can fly faster than the leader bee. They are also super eager. They always accelerate at their maximum possible acceleration.

Now, for each follower-bee, consider how far away it is along each axis from the leader-bee. Interpret those deltas as an amplitude, a horizontal frequency, a vertical frequency, a horizontal phase angle, and a vertical phase angle. Compute the inverse 2-D Fourier transform of those components from the follower-bees.

Color code the output by the height. Add in some specular highlights. Animate through time.

Fourier Swarm from Patrick Stein on Vimeo.

I have used a similar technique in the past to generate ambient music. There, I made twenty follower-bees in thirty-two dimensions and used the average distances along each axis to the leader-bee as the volume of the note (each axis had a different pitch). Here, the results are visual instead of aural. I also cannot generate them in realtime except for very tiny sizes. *shrug*

Here is the Lisp source code. It depends on Zach’s ZPNG library for output.

Share this article:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Reddit
  • Tumblr
  • TwitThis

8 Responses to “Inverse Fourier Transform of Swarm Data”

  1. 2009-09-24 @ 10:18 PM

    Hah! Very cool.

    • pat
      2009-09-24 @ 10:43 PM

      Doh, I had meant to mention that I was inspired by your Blob Thing. I forgot to throw that in in the rush to get this out the door before my volleyball game tonight. I have now added an opening paragraph about that inspiration.

  2. [...] added a heads-up display to the code from the previous article. This display shows you the coordinates of each of the [...]

  3. 2009-09-25 @ 8:06 PM

    [...] Inverse Fourier Transform of Swarm Data :: nklein software (tags: visualization swarm art generative) [...]

  4. 2009-09-26 @ 12:41 AM

    I Totally want this as my screensaver, or an iTunes plug-in.

    • pat
      2009-09-26 @ 8:19 AM

      At the moment, it takes about 2-seconds per frame, so it’s not so useful in real-time. *shrug*

  5. pat
    2009-09-24 @ 9:29 PM

    *nod* I was thinking about rendering them, too. They are in 5-d though so they won’t look much like bees. :)

  6. Daniel
    2009-09-25 @ 9:18 AM

    they’re in the 5th dimension. This video doesn’t do them justice.

Leave a Reply

You can log in if you have an account, register if you like, or just use the name/mail/website fields below.

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <br> <cite> <code> <dd> <del datetime=""> <dl> <dt> <em> <i> <img alt="" height="" longdesc="" src="" width=""> <ins datetime="" cite=""> <li> <ol> <p> <q cite=""> <strike> <strong> <sub> <sup> <u> <ul>

Updates In Email

Email:

l