contents
Composing Fractal Music with Csound
(Hearing the Mandelbrot Set)

Brian Evans
lightspace Studios
brian@lightspace.com
Introduction
The Basic Algorithm
Calculating a Score
(sonic line vs image plane)
Simple Mapping with Csound
Pitch Range and Event Length
Final Thoughts
References
Code/Sound Examples
Create a Score!
Misc. Images
A composer controls a musical work through choices within the musical dimensionsÐ pitch, dynamics, rhythm and timbre. Control of a work derived from a mathematical process can be achieved in two stages
  1. Selection of the parameters that control the mathmatical process
  2. Selection of musical materials (I will call them ranges) into which the output of the mathematical process will be mapped and a method for the mapping. In other words a mapping has to be found between the numeric output of the process and one or more of the musical dimensions. There are several degrees of compositional control in setting up these mappings.

To generate an image in the Mandelbrot set we select input parameters to the process including the midpoint and the window size of the region of interest on the complex plane. Image resolution, or number of points to calculate on the x and y axes, and maximum iteration allowed in the inner loop are also setup at the beginning of the program. For the sake of simplicity a square window has been defined. Each number that is returned can be mapped into a color and displayed, point by point, pixel by pixel, until the entire window under investigation is seen.

To create a musical score we simplify the process. A musical line can be created by calculating a single line of points instead of a plane of points. This can be done in the above program by holding the LamdaImag variable constant. This is done by calculating for a single point on the y-axis (yPoint). Now a single line of integers is returned by the program. These integers can be mapped into musical dimensions and then heard.