Supplementary files for "Exploring the space of perfectly balanced rhythms and scales"

This page contains supplementary material for "Exploring the space of perfectly balanced rhythms and scales". These include MATLAB routines used in the paper, and illustrative videos and musical examples.

MATLAB routines

The routines are bundled in two zip files.

The file Rebalance.zip contains a single MATLAB function Rebalance.m which, given a periodic location vector, finds the closest perfectly balanced pattern, as detailed in Sec. 5.3.1.

The file MinimalEntropyPB.zip comprises all the routines used to find perfectly balanced scales that minimize spectral entropy, as detailed in Sec. 6.2.1. Leaderboarder.m is the master routine, which calls the following functions: TabooCheck.m adds a penalty to ensure previous local minima are not refound; LocalSearchGrad.m defines the perfect balance constraint and sends a starting pattern to MATLAB's built-in fmincon function for optimization against the spectral entropy utility function (and its gradient) calculated by scaleSpectralEntropyIZWG.m. The interval content of the optimized scales are calculated by expectationTensor.m. The function MakeDistanceMatrix.m calculates the pairwise distances between scales; for each pair, the distance is the lowest distance under any rotation, being the greatest absolute difference between corresponding step sizes.

Text

The text file PrimitiveMinimalsInSphenics.txt lists, as indicator vectors, all primitive minimals in sphenic N up to 102.

Musical examples

Babylon 19|30—performed by DNIG! (Andrew Milne, Gareth Hearne, Felix Dobrowohl, Ian Colley) on 2nd September 2016 at The Playhouse, Kingswood, Western Sydney—is based upon a well-formed rhythm in 19 and a perfectly balanced rhythm in 30. The perfectly balanced part runs from 07:25–08:05 and again from 08:40–11:10; it uses regular and primitive minimals in 30 (Table 1 and Fig. 6) to create an interweaving polyrhythmic structure.

The mo.nzoli Pygmy dance rhythm, and the "Deal With It" and "Dots..." loops detailed in Sec. 7.1.

Demonstrations

A physical demonstration of perfect balance using weights on the rim of a bicycle wheel, as detailed in Sec. 1.

An overview of how perfectly balanced rhythms are parameterized in XronoMorph, as detailed in Sec. 6.1. XronoMorph can be downloaded from http://www.dynamictonality.com/xronomorph.htm, and further video demonstrations are available at https://www.youtube.com/c/xronomorph.