Blog for artist residency at IEM, Graz, May - August 2021

This blog is created by Vilbjørg Broch to keep track of my process during the artist residency at the Institute for Electronic Music and Acoustics in Graz Austria. Possibly it will also serve as a tool to share details for discussion along the way. It is not particularly ordered, and should not be viewed as a final product. A description of the project can be found here: Corporeity of Numbers

Contact: v at frekvensverden dot dk


2021-07-24 : Gosset polytope - E8 - graphics
Syntropy77, spectral composition structure
7sphere revisited, composition generated with the octonions
2021-07-21 : E8, 3D projections of roots, graphical animation
2021-06-19 : simplex wave guide mesh, algorithmic spatialization and reverberation
2021-06-15 : graphics: first E8 symmetries, and the simplex
2021-06-14 : perspective projections
2021-06-07 : path through the 8D measure polytope
2021-05-31 : hypercubes revisited

Selected Graphics:

Concert Presentation of spatial audio works in the IEM CUBE August 2021

For binaural renderings it is necessary to listen with headphones. Stereo can be played on speakers or via headphones.

7sphere Revisited

Practically everything here is generated with the 8 dimensional algebra : the octonions. The unit length octonions make up the unit 7sphere, which is a 7 dimensional surface, and hence the name. I have been working with the octonions for audio for some 5 years now, and it is good to return to the terrain once in a while and refine the tools for traveling around here. There is still endlessly much one could try to understand about the octonions, if one would live long enough, a few centuries or so . In a way one could say that this is a field recording on the 7sphere. I know that things are well behaved within a certain framework, but the way it is set up, then there are always new things to encounter.

Stereo : Binaural :

Entartung Entkörperung Entgeistigung

The harmonic structure for this piece started by looking at some tiny fragments from Arnold Schönberg's opus 23 which is now written exactly 100 years ago. After that the movements transformed much and got woven into a microtonal spectral structure. Anyway, every time I look at some of Schönberg's music I perceive that he has had premonitions of jazz to come up through the century. So maybe that is what it became: little echos of distant premonitions. The text is by Rudolf Steiner, from lectures 1916 and 1917. So the piece brings together some very different, both highly visionary, aspects of Austrian culture. Voice: Jannick Knyrim. text and English translation

Stereo : Binaural :

E8 work in progress

_ The E8 is a mathematical object which was discovered more than 100 years ago. But just the last few decades it has become very popular among physicists who try to use it to explain various mysteries. The so called root system of the E8 generates a lattice in 8 dimensional space. As one slowly approaches just a fractional understanding of this, then a symmetry is revealed so gigantic and awe inspiring that it becomes cystal clear why all these mathematicians and scientists are becoming completely infatuated with this thing. The audio is very very much work in progress. It could take years before I will arrive at something which, at least to some degree, expresses the sublimity of the E8. (If ever ?). It is sort of sonifications of the first mathematical understandings and explorations. I play it, because I spent a lot of time preparing it lately, and it is also typical for a way of working. Often in the processes I will sonify mathematics and listen extensively long time myself in order to perceive patterns and possibilities. But I will spare you for playing this the rest of the day, it will just be a few minutes. If you are interested in the E8, then I suggest to watch the recent graphical animation linked in top of this blog.

Stereo : Binaural :

IEM in the hyperCUBE

This is made for fun and it is not particularly refined. Little primitive field recordings from the institute, together with bits from files which happened to be left on the local Zoom recorder, are all let loose in the 8 dimensional hypercube waveguide mesh. Performed with live interventions.
This recording is from the space, thanks very much to Stefan Warum for handling that. The physical movement / dance was kind of a big part of this, and that is of course mostly missing in the audio.

Stereo :

Special thanks to the staff at IEM
for help and support through the process.


In the 3 months I will be working at IEM, I will get a chance to test some of my ideas for audio spatialization. The main objective with the process is to see how 3D projections of higher dimensional geometric and algebraic structures and transformations, can be implemented in audio projects. For the moment the realization of this happens in some very large Pure Data external objects, in which the encoding to Higher order ambisonics happens directly. I have used Aaron Heller's Python tool ADT2 to make the encoding functions. With this project I am not aiming at producing anything natural, but rather exploring new possibilities in algorithms. I guess what I am looking for is a sort of abstract geometrical and mathematical consequence. The project inter-connects the ideas of respectively resonance, instrument and algorithmic composition. In the coming time I have especially planned to look at structures and symmetries in the so called Lie Groups, and explore some of the vast algorithmical possibilities they offer. Audio Kaleidoscopes and time symmetries are guiding expressions.


I have been revisiting the hypercubes. I finished a PD external encoding for 5th order ambisonics using the 8D hypercube – measure polytope dimension 8 (MP8) – to model a feedback delay network (FDN) - wave guide mesh , using the edges and vertices of the measure polytope as respectively delay lines and junctions. This can not be run as realtime audio, it is too processing intensive, but there is the -batch option with PD with which I can run it offline. Iohannes Zmoelnig was so kind to point that out to me. In my ignorance I did not know this after all these years of using PD. It works really well, the -batch option. I hear or see no clicks in the recordings. This FDN -waveguide mesh is completely similar in structure to the ones I have realized based on lower dimensional measure polytopes, more or less just exchanging the datasets for the particular polytope The time varying effect comes from constantly rotating the polytope while it is projected onto 3D. The measure polytopes are so fundamental to euclidean space that there are many algebraic cancellations by orthogonal projection. Still, when the system is rotation, I find an interesting progressive variation. I have experimented with other projection methods along the way for the MPs. The coordinate-vectors of the polytope vertices in the 3D projection are normalized to the unit sphere, S2, for the ambisonics encoding. Original lengths of the vectors are stored and used for amplitude scaling. For the moment no further distance encoding is attempted, such as filtering. The lengths of the edges in the 3D projection are mapped to delay lengths. DC block and simple lowpass filtering (moving average) is build in to the object.
The following 2 test recordings are made today. The MP8 and the MP6 to compare. The 2 PD MP objects both have 5 audio inlets. Each inlet is routed to one of the 256/64 vertices. There is a method to set this routing. For this test recording audio input is a series of small envelopes(ms: at55, sus15, dec55) over 172Hz sine wave, 11 seconds between each. The pitch bendings derive from the changing delay lengths. The maximum delay length is set up to around 5 sec (maximum due to buffer size) , but will mostly be a lot shorter.
MP8 test1 binaural ogg vorbis
MP6 test1 binaural ogg vorbis
The binaural renderings are done with the IEM binaural decoder vst, using Ardour. Decoded from 5th order, using default plugin settings / no headphone equalization.
There is a density in the sound from the MP8 which I find interesting. The work towards understanding the structure of measure polytopes, what regards their composition and connection of sub spaces, I mostly did that a few years back. The mathematician Coxeter did much research on these structures. Another clue for me to map the measure polytopes completely was a publication by Glenn C. Smith : Flatscape of Measure Polytopes The measure polytopes can be generated recursively by tripling, which also shows the interesting relation between the binary and the ternary in these objects. For dimension n, the number of vertices is 2^n and the total number of subspaces is 3^n. For the Mp8 the number of subspaces dimensions 0-8 (0:vertices.. 8:full polytope) is : {256, 1024, 1792, 1792, 1120, 448, 112, 16, 1} for MP6 it is : {64, 192, 240, 160, 60, 12, 1}.
MP flatspace
flatspace data file


3D projection of 8 dimensional measure polytope, 2 projection views
animation of measure polytopes (made 2018) vimeo link


The following test recording is made with a new PD object using the structure of the 8D measure polytope. It is thought as an algorithmic spatialization tool, and besides that it keeps the spatial reverberation function of the waveguide mesh. Though I will comment that I think the reverberation is not very interesting in this way. The rotation of the polytope is set to be very slow, which means that the delaylengths are not varying much, to avoid too much pitch bending effect. And with the orthogonal projection the delaylengths only take on a few different values, hence a very 'square' effect, lets say. The purpose of this object is to let the 5 audio inputs move on each their path through the polytope, from vertice to vertice. Since each vertice is connected to 8 other vertices, there is a choice to be made each time an input node arrives at a vertice. The selection is made by iterating over finite prime fields using the spread-polynomials discovered by mathematician Norman Wildberger - then taking the value modolus 8. This family of polynomials can be recursively generated. The 2nd polynomial is the logistic equation, and I have made functions for polynomials #2 - 20, which I have been using for different applications for a few years. When using large prime numbers one can create large orbits getting close to white noise. But it is also possible to use smaller primes and create smaller orbits. I think the audio PD object worked better when listening to this in the IEM Lehrstudio, than what I perceive from the binaural rendering here. The samples used for this test are small bits of recordings of Arnold Schoenberg, which I found on the website of the Schoenberg center based in Vienna. For now this is just meant as a test, and not an 'art work'. I will contact the center and ask for permission if I will use these files at a later moment.
MP8 Path samples binaural ogg vorbis


MP8 Path perspective projection, samples binaural ogg vorbis
The audio file linked above is similar to the one liked in the previous post, except that the measure polytope is first projected onto 4D by orthogonal projection, and from there onto 3D with perspective projection. This gives a much larger variation in delay lengths and distances which are used for level scaling.
The following file is a test similar to the file linked in the post from 2021-05-31
Again with the exception that the projection method uses perpective projection. MP8 perspective projection, 172hz input binaural ogg vorbis


Graphics is a way for me to test some geometric functions before implementing the algorithms in audio projects. For the moment I am using OpenFrameworks to realize the graphics..
The simplex is in 2D a triangle, and in 3D it is a tetrahedron. It is a regular polytope which is simple to construct in all dimensions.

A first look at the symmetries of the E8 Lie group. First a single point, then 5 randomly generated points are reflected in the hyperplanes defined by the root vectors of the E8. The 8D structure is rotated while projected onto 3D. E8 is a massive mathematical object, with much details which are not apparent in this little animation


The following audio test is made with a waveguide mesh modeled after the simplex. This particular geometric structure has 23 vertices, so it is 22 dimensional. But for a simple construction it is layed into a 23 dimensional space. Imagine a 2D equilateral triangle constructed in a 3D coordinate system by putting its 3 vertices at (1,0,0),(0,1,0),(0,0,1). This is extendable upwards in the dimensions. The scattering junctions are time varying, they are done with reflections in rotating hyper planes. The whole system is rotating (slowly) as well in 23 dimensions, while projected onto 3D. The delay lengths are computed from the projected edge lengths, so there is a slight bit of time variation there too. This polytope gives a far greater variation by orthogonal projections than the MP family. There is also a method in the PD object to let all delay-lengths take the value of a prime number, but this recording is made with delay-lengths from the projected edge-lengths. The structure has 253 edges.( binomial-coeff(23,2) ) The input to the test are small envelopes over brown noise (lowpass filtered). The PD object has 5 audio inlets, which each are traveling around in the structure, in the same manner as with the MP8-path from 2021-06-14. The direct signal, as well as the signal from the mesh, are amplitude-scaled inverse proportionally to the node's distance from the origin. For the ambisonics encoding, each node point is 'normalized' to the unit sphere . I made the system 'one-way' so that each node/vertex has 11 incoming and 11 outgoing lines. For the vertices to have the same number of incoming and outgoing lines the simplex needs to have an odd number of vertices. For a prime number of vertices the 'one-way' passages through the system are easily created using modular arithmetics. The PD object needs some better lowpass filtering for the future. There are various methods in the object to scale delay lengths and to control decay. The decay can in this setup be controlled by shortening the vectors which define the reflecting hyperplanes. These vectors cannot be longer than 1, to ensure stability of the system. Below there is a drawing showing the structural idea for a simplex with 5 vertices.
simplex23 noise impulses binaural ogg vorbis

simplex wave guide mesh


The roots of the E8 are projected onto 3D. X, Y, Z - where z is the depth axis. The X-Y-plane is spanned by the eigenvectors of the Coxeter-element, respectively the real and imaginary part of each of the 8 eigenvectors. The animation moves through all the eigenvectors, it starts and ends with the X-Y-plane being the Coxeter plane. The Z-axis is orthogonal to the X-Y-plane. It has 6 dimensions (8 - 2) to rotate in. The colors depend on my ordering of the roots, which is not canonical / it could be done in many ways. One specific root and it's negative have the same color, but the hues are so close that it is a bit difficult to see that exactly. Again, the animation is made to test my functions for a spatialization application.

7sphere Revisited
Binaural rendering of composition for 5th order ambisonics - 8min55
Practically everything is generated with the 8 dimensional algebra the octonions. The octonions have been with me for several years. In 2016 I started the audio-visual performance 7sphere Journey. In the winter of 2020, while working at CCRMA, I made the piece 7sphere Karma. For this composition I have refined the tools which I developed spread over several years. Orbits in 8D space, generated with octonion multiplication, are projected and mapped for synthesis. Time structures are generated with octonion multiplication over finite fields of varying sizes. The sound enters a waveguide mesh for spatialization and reveberation, again created with octonion orbits. In this mesh I have parted the delay-lengths in to 2 groups so that it is possible to smoothly vary how large a part of the delay-lengths will vary with the rotation of the mesh.

Binaural rendering of composition for 5th order ambisonics - 5min15
The compositional structure for this piece was made last winter. But it is here reworked somewhat and realized through the Simplex23 waveguide mesh described above. The piece explores harmonic structures generated from the numbers 7 and 11, which usually do not have a place in traditional tuning systems. The synthesis has bits af quasicrystal waveforms, non-periodic order.


This animation is similar to the one above, showing the root vectors of the E8. But besides the 240 roots of the E8 it includes the 6720 edges of the Gosset polytope. This animation moves through the eigenvectors of the Coxeter element twice in different order. To my best understanding the edges of the Gosset polytope make a triangulation of the 7sphere into equally sized equilateral triangles. So that every root is the vertex of a high number of equilateral triangles. I still have to compute that number.