Tuesday, March 22, 2016

Theme and Experimentation

This is a piece I’ve been working on for several months.  It was initially inspired by a sonification by Milton Mermikides of a video of “pendulum waves.”  I had seen this particular video before and several others like it:  a set of pendula of slightly different but related periodicities are set in motion simultaneously and then viewed longitudinally, so, together, their differing periodicities create a visual wave and other patterns that eventually repeat.  However, Mermikides took it a step further and sonified the visual wave by coordinating the pendula’s periods with a marimba playing a D pentatonic scale.


When I saw Mermikides’ sonification, I thought, “Hey, I’ll bet I could do that in a Max/MSP patch.” It took quite a bit of futzing around, but I figured out how the pendulum waves worked and was able to build an emulation that followed Mermikides’ sonification note-for-note.  In the process, it also occurred to me that the emulator would work as a music controller.  Out of those ideas was born this piece.

The first section is the emulation of Mermikides’ sonification.  Following that are five experimental variations using Max patches based on or inspired by it as synth controllers.  I’ll discuss their structure and, where appropriate, original voices below.



Theme
It took me quite a while and several failed attempts to figure out the math for this.  Initially, I assumed a linear relationship between each pendulum, specifically, p+nx, where p = the period of the shortest period pendulum, n = the pendulum number (1-16, in this case), and x = the difference in length between the shortest and the next shortest pendula.  However, I found that, although my Max patches, effectively collections of virtual pendula, did interesting things, they never “wrapped around,” never repeated the way the real ones in the video did.  After puzzling about this for some days, it occurred to me that the waves manifested by the video’s pendula behaved analogously to the way waves in a vibrating string would, as in this diagram:


Since the ends of the string are bound, the waves are necessarily fractions of the total length of the string, or fundamental, and so have resonant relationships with each other.  In the case of the pendula in the video, I guessed that, if each one were to represent a partial of the same fundamental, it could explain how they wrap around as they do.  In other words, it might work if each pendulum frequency was 1/n, where n = the number of the harmonic of some fundamental.

If you’re familiar with the overtone series, however, you know that the partials in the low end of the series are fairly far apart from each other frequency-wise (being an octave, a seventeenth, two octaves, etc., above the frequency of the fundamental).  You’ll also note that in the video there are no adjacent pendula that swing in ratios of 1:2 or even 4:5, so they had to be pretty high up in the series.  And, indeed they were:  I finally got my 16 virtual pendula to match those in the video swing-for-swing when I calibrated them with the lowest pendulum as the 51st partial of a base periodicity 60.5 seconds long.  In other words, the pendula in the video represented a 16-partial section of the top 66 harmonics in an overtone series with a fundamental of 0.0165 Hz.  Once I had this worked out, it was a relatively simple thing to connect the patch’s MIDI output to a marimba sample.  It is that output that I recorded for the Theme.


Variation 1
The 1/n overtone series structure of the pendula begged the question:  what would it sound like to emulate a pendulum wave for the entire overtone series up to that partial (1/66)?  Building this was relatively simple, once I had worked out the patch for the theme:  I simply took the individual pendulum patches and stacked them, ending up with a 72-pendulum system, just because stacks of 12 were easier than stacks of 16.

A 72-note pentatonic scale would have an auditory range wider than was practical to listen to, so I thought it would be interesting to have the overtones themselves broken out, such that each pendulum might play a harmonic that is analogous to its frequency.  Even this represented a wide range, so I pitched the note for the fundamental pendulum at A at the bottom of a piano’s keyboard (27.5Hz), so that by the time we got to the top pendulum we’d still be well within human auditory range (1980Hz, or 4.5Hz sharp of the B three octaves above middle C).  I kept the fundamental periodicity about where it had been in the theme, at 0.0167Hz, or once every minute, making the periodicity for the top pendulum 1.2Hz.

The MIDI instruments that I have mostly do not allow coding for non-tempered pitches, so, if I wanted to hear how the overtones were actually pitched, I needed to have the pendula output to a synth that could take frequency directly.  So, I added a simple softsynth to each pendulum:  a couple of sawtooth oscillators and a square wave, evenly balanced dynamically, with the duty cycle for the square wave set at about .65 and the whole thing passed through a low-pass filter set to 1760Hz cutoff (2-stage, so a shallow slope) and a resonance around .5.  This was run through an ADSR with a sharp attack and about two seconds of decay (0% S and 0ms R) — not much more than a “ping!”  My intention here was to make distinguishing the cycles and pitches of each pendulum as clear as possible, especially the highest notes.  Finally, just to make it a bit more kind to the ear, I added a bit of virtual plate reverb.  I then recorded this through a single cycle (1/1 of the fundamental).

The result was not terribly musical, although I did find it interesting in other ways, especially as it reveals structures of the overtone series.  For example, you may notice that it appears to play more than one cycle.  What is actually happening is that what plays up through about 30 seconds is performed in reverse in the second 30 seconds; these two sections are separated by the sounding of the second harmonic/first partial (second lowest pendulum) — in other words, the 1/2 period frequency.  So, in terms of the sequence of pitches, it’s a palindrome; the first half “winds up” a sequence which is then “unwound” in the second half.  If you look back at the visualization of the vibrating string above, this makes sense:  imagine tracking center-crossings from left to right and you’d get the same pattern.  If you listen closely, you can hear other parts of this pattern in the sequence, for example, the 1/4 pendulum also punctuates the ~15-second and ~45-second marks, and the top end pendula play in little runs together off and on.  Too, I found it interesting to hear how close together the partials in the upper range are, so much so that they almost make a glissando when played in order.


Variation 2
I felt that, although I was very proud of having “unlocked” the math behind the pendula in the video and thought that the result was interesting from a theory-of-sound point of view, the 1/n model was musically limited.  The most I saw that could be done with it was to sample sections of it, e.g., pendula 1/12-1/24 or 1/72-1/88 or 1/1-1/6, and possibly vary the speed, but they would always make essentially the same pattern.

My initial incorrect model, p+nx, I thought, ironically, had more potential for creativity:  by varying the periodicity of a target pendulum (p) and the size of the difference between it and the next pendulum (x), I could produce a wide range of patterns.  This model would be the basis for the remaining variations.

For #2, along with the periodicity and difference ratios, I had also been playing around with key-center changes.  One configuration, with a fairly high periodicity for the highest-frequency pendulum (quarter note equals 250bpm, or a pulse every 100ms) and the same difference between pendula (i.e., the fastest pendulum pulses every 100ms, second every 200ms, third every 300ms, etc.) produced something that, rhythmically, reminded me very much of Steve Reich.  This is not surprising, as you could argue that each pendulum represents a polymetric pattern relative to the other pendula.  I also played with different key centers and programmed in a sequence that felt pleasing, even if it is not especially sophisticated.  This output was sent to a Yamaha piano sample I have, resulting in the above recording.


Variation 3
This piece used essentially the same controller (actually it’s an earlier, simpler version than Variation 2), but with two critical differences:  First, the primary pendulum periodicity was shorter than the differences between pendula (2:3 ratio), setting up a syncopated feel to the rhythm.  Second, by toggling the top (fastest) pendulum on and off separately from the rest and repeatedly starting and restarting the controller, I could “play” the emulator in an instrument-like way.  The result, to my sensibilities, has a more intentional, and therefore more musical, feel to it.  The voice was something I had originally created in Logic Pro 9’s ES2 for another piece some years ago which I never used but really liked.  I recorded myself improvising with the controller and sent Max’s MIDI into Logic to control the ES2 voice.


Variation 4
For this piece, I took the p+nx model and theme from Variation 2 and slowed them down quite a bit to quarter note equals ~40.  However, I did not make them precisely the same; the periodicity was 380ms and the difference between pendula was 375ms, which meant that the pendula would initially sound like they were playing together, but eventually drift apart.  Additionally, I took this variation as a chance to use a bell voice I had developed in Max/MSP and especially like.  The result, to me, sounds more aleatoric than the previous variations, especially as the 5ms difference between p and x progressively de-coordinates the pendula.


Variation 5
For this final experiment, I wanted to play with more scales than just the pentatonic or the overtone series and to arrange the pendula in something other than highest-to-lowest order.  I reconfigured the pendula such that the fastest pendulum (#1) would be the center pitch and the increasingly longer periods would alternate to either side, i.e., #2 would be next up from #1, #3 would be next down from #1, #4 would be next up from #2, #5 next down from #3, etc.  I then set up a mechanism to change scales periodically, beginning with a chromatic scale, then octatonic, major, minor, septatonic blues, whole step, hexatonic blues, pentatonic, minor thirds, major thirds, fourths, and, finally, fifths, which the controller then cycled back through palindromically.  The velocity was allowed to vary increasingly from beginning to middle and then decreasingly from middle to end.  Middle C was retained as the tonal center through all of these changes.  For the voice, I chose a physical model marimba, rather than the sampled instrument from the theme; along with feeling like it was just a good instrument for the music, I liked the symmetry of using a marimba again for the final variation, with the twist of it being an entirely synthetic sound.  This piece also has a kind of aleatoric feel to it for me, although at times a flavor of intentionality seems to chime in, which I construe simply as artifacts of the tonal scales.


Overall, I am proud of this piece primarily because of the total hours invested in it, which are far more than for any other musical work I’ve done so far.  This is not important in a gratuitous sense of more hours = better, but rather as a reflection of my growing ability -- and confidence in my ability -- to see larger, more complex projects through.  Aesthetically, I think Variation 3 is the most interesting (indeed, I have some thoughts about building a more “performable” controller from it).  Timbrally, I’m very pleased with the bell tone synth in Variation 4 and it also is the result of many hours of experimentation.  Too, I’m proud of having figured out the math of the theme; this is not my strong suit and that I was able to work it out at all left me encouraged about future adventures in sound.  Much of the rest of the piece is not terribly musical or, to my ear, very interesting, but the project has from the start been an experiment, and the nature of such efforts is that some things work and some things don’t.  I am happy and grateful to be able to share the successes and the failures here.