Sunday, March 2, 2025

Narrowing the Range

Here is a new piece in 53edo. This is another attempt to create a kleisma traversal. Yesterday I posted a first attempt, whose score did not look like a kleisma traversal. I looked back at the code, and it sure looks like the system had been initialized to a kleisma traversal. So the most likely thing would be that I jostled the system at too high a temperature which erased the kleisma traversal, and then as I brought the temperature down a different structure spontaneously emerged.

To test this hypothesis, I used the same rhythmic structure and the same initialization of pitch values, but just set the temperature near the phase transition and jostled the system at that relatively cool temperature.

Here is a score of the piece. The 32 varying repetitions have been folded on top of each other. The vertical axis is the pitch classes, ordered by minor thirds. I.e. each row is the pitch class one minor third above the pitch class below it. This score looks exactly like a kleisma traversal. There is a gradual ramp from the beginning of each 80 second measure, moving up 6 minor thirds, which then wraps over to the beginning of the next measure but a perfect fifth higher. There is a whole band of pitch classes that is absent: a kleisma traversal has no business visiting all the pitch classes of the tuning. It just needs to follow a path to the tempered out comma, in this case the kleisma.

This brings up another facet of the puzzle of yesterday's piece. This piece did cover all the pitch classes. It looked a bit like a schisma traversal, but that shouldn't cover all the pitch classes either. So I suspect the structure that emerged was some kind of compound comma traversal. I have code to initialize a system with a pattern like that... but how to detect it once it has emerged... I don't know quite how to do that!

Here is another score for the piece, but with the rows reordered so now each row is a perfect fifth above the row below it. There is no helical structure here at all: the dense regions don't connect to form any sort of path. This shows that the piece is not any kind of schisma traversal.

Saturday, March 1, 2025

Bug or Feature?

Here is a new piece in 53edo. My intent was for this to be a traversal of the kleisma comma, repeated 32 times with variations. I'm not too sure what I actually got!

The idea behind the thermodynamic approach I use in my software is that order can emerge spontaneously. I use unusual tunings; my hope is that this kind of spontaneous order can reveal some of the potential of these tunings. There is one significant challenge though: is the order that can be discovered in the output something that I introduced accidentally, or is is truly spontaneous?

I often do introduce a simple structure into the system I am simulating, and try to preserve that order. In these cases, I just hope that the variations will reveal additional order around that structure. In the piece here, I initialized the system with a traversal of the kleisma comma along one axis of the system. The variations can then emerge in the other dimensions.

I use various types of graphs or scores in trying to see what sort of order might be present in the output. The graph above is a simple score for the piece. Time is on the horizontal axis, in seconds. Pitch class is on the vertical axis: the pitches in the piece are all folded into a single octave, so the vertical axis runs from 0 to 52. The graph looks a bit like a coarsely woven fabric. Since the topology of the system is 32 repetitions of an 80 second measure, folding all the repetitions together might make the order more clear:

It's clear that the measures share some sort of structure, but it's not so clear what the order is. There is a vague sort of staircase structure, so it looks a bit like a comma traversal. It's pretty surprising that almost all the pitch classes are present. A simple comma traversal doesn't need so many pitch classes!

The kleisma comma is dominated by minor thirds. Six minor thirds is very close to a perfect fifth, and in 53edo they are exactly the same (modulo octaves). So I had the idea of shuffling the pitch classes. This graph has the same rows as the previous graph, but instead of ordering the pitch classes in a sort of chromatic way, just climbing microstep by microstep, in these graph each row is a pitch class a minor third above the pitch class below it. Horizontal stripes appear in this graph, with a period of about 6 rows. These are the perfect fifths. But if this was a kleisma traversal, there should just be a few stripes that angle very slightly so they change height by 6 rows from one side to the other; the right side of this graph wraps over to the left side, so the traversal should look like a helix. This graph has a strongly helical shape, but it is very steep. I don't think I ended up with a kleisma traversal! But all those stripes of a perfect fifth...

Here the rows are ordered so each row is a perfect fifth above the row immediately below it. There are about six stripes that gradually rise from left to right, wrapping to the next stripe to form a helix. Ah, this looks like a traversal of the schisma. With a schisma, eight perfect fifths plus a major third bring one back to the starting point (again, modulo octaves).

My intent was to produce a traversal of the kleisma, but I got instead a traversal of the schisma. I need to go back to my code... did I bungle the initialization? Or maybe I jostled too much, the initialization got erased, and the schisma traversal emerged spontaneously. Either way, when I listen to the piece, it sounds pretty good to my ears!