7 – Being Harmonious

Pitch collections making tonalities and chords : Morton Feldman and Howard Skempton : the chord object : devising harmonic objects : generating chords – exploring the complex arguments of the gen-chord function : how to build a function : creating unique tonalities to produce arpeggiated chords in TheWhite Light of Wonder – a piano work after Schumann’s Kinderszenen.

Rhythm is a linear phenomenon, whereas pitch can be arranged horizontally or vertically. When two pitches sound together a chord results. Since the early 20C composers have gradually come to think of the simultaneity of pitches as texture as much as harmony. Harmony itself has ‘moved on’ from the constraints of voice-leading and the traditional well-tempered key systems of Bach and Rameau.

CAC systems have become a natural test-bed for experiments in harmony, and for some composers this programming medium is where their chordal world takes shape.

Let’s explore a number of techniques that view chords as self-contained or discrete pitch-based objects. To do this it’s useful  to make a preliminary move from the traditional key system with its signatures, chord scales and voice-leading into areas of harmony which, whilst tonal, may extend the palette of harmonic effect. Many of these harmonic forms and devices retain a lively role in jazz, film and TV music, as well as music for games and electronic media. Most CAC systems will include the means to code harmony using jazz chord symbols, handle inversions, and provide libraries where exotic and world music scales can be accessed. It’s also quite common to find composers using Messiaen’s scales and modes or the resources of the Elliott Carter Harmony Book in commercial contexts, particularly film. And these materials are increasingly becoming part of CAC libraries.

I’m in good company with composer John Adams in often referencing Nicholas Slonimsky’s Thesaurus of Scales and Melodic Patterns. Whilst this resource can be used in tonal contexts the scales and patterns are predominantly atonal and derive from sequences and combinations of intervals. As several of my works demonstrate, such sequences of patterns can be used as tonalities around which a composition can be structured. A good example of this would be the solo guitar work Dreaming Aloud and Interactions for Piano (left hand).

7-1In principle, any collection of pitches has the potential to be classed as a tonality. CAC has encouraged many composers to view tonality as the sum of a web of relationships between pitches. This view would include pitch collections that are spread across a pitch continuum of several octaves. Because conversion of, and between, data types is a fundamental part of a CAC system, it’s relatively straightforward to invent a sequence of tonalities.

Morton Feldman was one of the first composers to explore the chord as a kind of contemplative sonic object. His music for piano such as For Benita Marcus creates, from the earliest pages, tonality collections that are unusual, mysterious and often wide-spread. This is music that has very little relationship to the past traditions of the piano literature: resonance and delicacy of touch is all important and the listener becomes increasingly aware of how novel arrangements of pitches can possess great beauty.

For me it was Howard Skempton’s persuasive miniatures of (often) just a few bars that held a similar fascination and contemplative possibilities. My extended piano work Fifteen Images – Le Jardin Pluviuex comes out of my study of the collection Skempton assembled for the John Tilbury’s CD Well, Well, Cornelius. Here is part of Skempton’s piece Stroking the Keys.

7-2Fifteen Images uses computer-aided means to devise tonalities that, whilst very distant from traditional keyboard harmony, held possibilities for rearrangement in voicings commonplace in contemporary jazz harmony. The intricate planning of the piece called for fifteen tonalities that might hold distinct properties similar to that of colours on an artist’s palette, and like an artist’s palette enable tonality-mixing and interpolation. Here’s  a model that explains how such tonalities might be devised.

7-3To make these harmonic objects a random process was devised to secure chords for each hand. Notice that there are between two and four chord tones in each hand. Note that later versions of Opusmodus use the function name gen-loop rather than gen-eval.


The above expression  collects together a number of processes and generations. We’ll read them from the end, back to the beginning.

  •  :seed is a means of reclaiming a random operation.
  • (gen-integer 0 11) generates (0 1 2 3 4 5 6 7 8 9 10 11)
  • (integer-to-pitch changes these integers into pitches (c4 cs4 d4  . . .)
  • (rnd-sample (rnd-range 2 4) choose between 2 and 4 pitches
  • (gen-loop generates 8 different versions of the above process
  • (mapcar ‘ compress brings together 2 to 4 pitches into chords

So the output of this expression is:


Compare this output stream of pitches to be played by the right hand against the notation example. There is an equivalent expression that produces an output for the left hand. A pitch-mix function is used to bring the chords together, but then, to show the chords as scalic tonalities, we’ll add sort-asc and pitch-melodize.


To look into the potential of this tonality-making, download the score of Fifteen Images from the web and see just how this idea is taken forward into a composition.

Before the composition of Fifteen Images I created a work called Conversations in Colour, a BBC commission for a distributed performance project across the principality of Wales. This five-movement work was entirely derived from words used by the artist Josef Albers to describe the affect of colour. Although the original score calls for a choir of voices and two ensembles (all in different locations!) a version for piano was subsequently created called The Goethe Triangle. In the third movement named Mighty, a function is used called gen-chord. When applied to the word (m i g h t y), gen-chord can be used to produce rich and varied chordal material. The opening bar in this example is the word mighty converted to pitch. Beneath the score example is the ‘Goethe Triangle’ and one of Josef Albers poems about colour.

7-87-9Most CAC environments allow conversions between alphabetic symbols, integers, vectors, and pitch symbols. Here’s how the word ‘mighty’ is converted to pitch symbols in Opusmodus:


The function gen-chord, used as source material for the passage that follows in bars 1 – 5 , has many arguments. It’s like a programme all in itself. Let’s look at the idea of arguments because most of the functions found in the example programs in earlier sections have only been presented with one argument alone. To emphasise the use of such a function, here is the documentation of Opusmodus:


It looks a little challenging! But here are two very basic examples:


Now, we’ll take the first chord (of eight) generated from the ‘model’ shown at the beginning of this section. This was produced to create a tonality object:


What gen-chord is capable of doing is taking a collection from such a novel tonality and varying it through transposition and chord-size. Here’s the expression:


Now for the breakdown of functions that surround gen-chord:

  • :seed required as part of gen-chord as it’s a randomising function
  • The variable l-lis is that first chord / scale (e4 bb4 fs5 a5 b5)
  • The function gen-repeat repeats l-lis 8 times = 40 pitches in all
  • gen-chord will produce chords of size 2 – 4 and transposed between a perfect fourth higher and perfect fifth lower.
  • The final argument is that of an ambitus range of 24 (2 octaves).

Here’s the result, but notice the 40 pitches are spread out across chords of 2,3 and 4 pitches:

7-15Before we move away from this kind of tonality-making take a look at this short piece of code. It defines a function, a function that in just one line does everything shown in the code of the first example. Composers find that if a sequence of expressions makes for a routine they are likely to use again and again, making a bespoke can save a lot of typing! Most CAC systems will allow the composer to embed such a function permanently into their system or will place it into a file that can loaded into the system at start up.


It’s this kind of possibility, essentially creating a personal tool for composition, that can become one of the great attractions of working with a CAC system.

To conclude this section on inventing tonalities and creating chords, let’s look at another piano work entirely composed with a CAC system. The White Light of Wonder came out of a commission to write a suite of pieces for solo piano in the spirit of Schumann’s Kinderszenen. It takes as further models similar collections by Dallapiccola and Nielsen whose Klavermusik for Små og Store is written so that the spread of each hand sought by the music rarely requires more than the interval of a fifth. The composition of almost the whole piece uses an almost identical program as previously introduced to make unique tonalities, only the chord size is programmed to remain constant, generating just two pitches for each hand.

The title piece of the collection The White Light of Wonder is entirely made up of ascending and descending arpeggios that begin from 4-note chords but are extended harmonically by adding further intervals. The example below is a simplified model of this process, using a program similar to that already presented in this section. Please note the function gen-eval has been replaced in later version of Opusmodus by gen-loop:


These expressions build the chords – eight dyads in each hand:


The above complex expression mixes the two sets of dyads together, transposing the left hand down an octave. It then melodizes the four-note chords into arpeggios and sorts the arpeggios into ascending and descending forms.


Pitch and rhythm come together here and the output is used to make the variable tonality-1. The reason for doing this is to be able to add a legato marking and alter any pitch symbol to make the correct musical spelling.


Now download the score from the web archive for The White Light of Wonder and take a look at the composition this model is based on.

7-22Closing bars of The White Light of Wonder.

These are just some of the ways harmony can be developed in computer-assisted composition. As stated in the Introduction there is a lively and current interest in spectral harmony that can only be realised in CAC systems like OpenMusic. This is achieved by allowing for a finer pitch resolution by dividing each MIDI note into microtones, or ‘cents’. In such a scheme, the note of middle C (with a MIDI pitch value of  60) would have a pitch value of 6000, this finer resolution allowing for the creation of convincing spectral harmony.

Links, References and Further Reading
Frederic Bonacossa: Open Music Tutorial Part 1
Morton Feldman: For Bunita Marcus
Nigel Morgan: Conversations in Colour, for three ensembles and digital media
Nigel Morgan: Fifteen Images (Le Jardin Pluvieux), for piano
Nigel Morgan: The Goethe Triangle, for solo piano
Nigel Morgan: The White Light of Wonder, for solo piano

Leave a Reply