Archive for the ‘Computer music’ Category
Lorenz model
Tuesday, April 27th, 2010To complement the FPU post below, here’s a similar approach to the well known Lorenz model used in chaos studies. There’s an increasing Rayleigh number used in the computation of this clip.
It’s obvious that there are very interesting regions of nonchaotic behaviour in the model.
Fermi-Pasta-Ulam
Tuesday, April 27th, 2010Current studies have led me to meddle with the famous FPU (Fermi-Pasta-Ulam) problem. Unsuprising event, since it is one of the cornerstones of the study of computational physics.
It was one of the first problems that was tackled not using analytic math tools, but using high speed digital computing. The reason behind this sort of approach was the difficulty of dealing with nonlinear equations; something that is near impossible to deal with exact analytical attacks. Digital computers and numerical analysis however is the ideal tool to conduct these sort of chaotic computational experiments with.
A lot has been written about the FPU problem (try the wikipedia article for a decent summary), but an immediate way to grasp the problem is by hearing how it sounds. The system described in the problem consists of masses coupled together, the usual scalar wave equation with nonlinear coupling terms added. Here the initial gaussian pulse oscillates in the system without damping and with increasing nonlinearity.
Another example is done with a custom VST plugin. The system is driven with two pulse oscillators.
More automata music.
Sunday, October 11th, 2009I’ve been kept busy by Schrödinger, Fourier and Dirac lately, but I had some free time finally and put together a more refined way to derive musical (or so) structures out of one dimensional cellular automata system. Partly inspired by the excelent lectures on early finnish experimental electronic music scene at the local media art museum (see http://mansedanse.com/events_fi.html).
The algorithm quantizes the chromatic scale down to any arbitrary scale and picks up two notes to be played. This produces a more music-like result than the total chaos of applying the whole automata state straight to the chromatic scale.. though I’m not saying that it can’t produce interesting results.
http://www.punainen.org/~biotek/cell0011.mp3
http://www.punainen.org/~biotek/cell0012.mp3
Here is the MATLAB code responsible for these, keep in mind though that the quantizer code was written in the middle of the night (I think you can tell) so there are probably some glitches to it.
Automata music
Tuesday, August 25th, 2009What would be better application for one dimensional cellular automata than autogenerative electronic music. I know Wolfram Tones offers something along these lines but I set out to experiment on my own first with just the bare rules applied to the chromatic scale. Couple of important rules rendered on the chromatic scale:
http://www.punainen.org/~biotek/rule30.mp3
http://www.punainen.org/~biotek/rule110.mp3
These does seem to hold a eerie quality to them, not that anyone would recognize them as music. Next I cherrypicked a good set of rules which seemed to work nice enough when applied in a random order. I think I used the c major scale for this one.
http://www.students.tut.fi/~heikkara/autobach4002.mp3
That sounds a lot more like music, almost emotional at times. This is a Processing program playing midi notes to a Roland Jx-3p.
Radio Free Robotron web requests.
Saturday, November 8th, 2008I got around programming some perl and php hacks to interface a web page with the liquidsoap server running the radio. Enjoy.
http://www.punainen.org/~biotek/radio_free_robotron/request.php
1-D Wave Equation VST optimization
Sunday, September 7th, 2008After a few hours of playing around with SSE intrinsics I managed to cut the cpu cycles in half (more or less).
Here’s the link:
http://www.punainen.org/~biotek/string_sse.dll
Mirror VST
Tuesday, July 29th, 2008Another crazy idea I had which turned into a VST plugin is a spectral mirror. I’m not really sure if that is an appropriate name for it. What it does is that it takes a band of frequencies (for example frequencies 0 Hz thru 4 Hz) and flips it around so that a high frequency becomes a low one and a low becomes a high frequency. How it does this is based on modulation; it modulates the band of frequencies thru the zero frequency aided with steep filtering to remove unwanted sidebands.
The result sounds unnatural because the frequencies aren’t harmonic anymore. The effect is best on human speech, since it really tricks your perception of it. I guess it’s due to the time domain having roughly the same characteristics but the frequencies aren’t perceived anymore as speech. In other words it almost sounds like speech in some weird way but is still unintelligible.
Here is an example. It’s a talk on Kurt Gödel by Rebecca Goldstein (http://www.edge.org/3rd_culture/goldstein05/goldstein05_index.html)
The original talk:
http://www.punainen.org/~biotek/gödel.mp3
The talk thru the mirror vst:
http://www.punainen.org/~biotek/gödel_mirror.mp3
Here is a link to the win32 dynamic link library:
String reverb VST
Sunday, July 27th, 2008I’ve had this plan to put together a simple string reverb sort of thing since I studied basic wave functions a while ago. Well, now i finally got to it and put together some code. The mathematics behind it is the usual one dimensional partial differential equation. I consider it to be in alpha stage, you can get very loud noises if you introduce quick discontinuous parameter changes so beware. However it does work nice enough, even if the code is not optimized in any way at all.

Here is a link to the win32 vst dll. If you happen to try it I’d like to know what you think of it and if there were any problems.
http://www.punainen.org/~biotek/string.dll
Here is a small example mp3 I did with the plugin, feeding it from a sine osc modulated with a s/h.