6 – Starting with Pitch

Pitch as a parameter : pitch – forms and functions : pitch collections – traditional, contemporary, experimental ; making scales, making tonalities : the Hopalong algorithm : scale-raga examples : fragmentation functions : ornamentation of repeated pitches : introducing OpusModus Notation (OMN) : using integers to generate pitches and chords : a chorale .

The parameter of pitch doesn’t have to mean melody, an immediate blending of pitch with rhythm. Pitch as a discrete parameter can exist on its own, and as such can be a starting point for tonality and harmony, the horizontal scale of pitch elements, and the vertical arrangement of pitch so as to create chords, and as an adjunct, arpeggios.

Composition practice since the late 19C began to explore the idea of pitch collections that could not necessarily be described as traditional scales or even modes. There was an appreciation that the idea of tonality had expanded to describe more than just a major or minor scale with a key signature, but a collection of related pitches that might belong within a scale in a key. And this was but a small step to establishing that the chromatic scale could be a base tonality.

As a result of this, the idea of a pitch set or pitch row developed. It brought with it a still developing theory of pitch organisation which, whilst not wholly part of new music today, remains as a vital way of organising, classifying and analysing pitch.

Just as rhythm in computer-assisted composing (CAC) has developed particular forms (and functions) to vary its content from a pulsed note-length, so too has pitch amassed an equivalent collection.

Although rhythm probably gets the edge on pitch as a starting point, pitch has its own repertoire of opening gambits.

Whereas rhythm is made up from collections of note-lengths, pitch as a single entity has traditionally been collected into formal scales, modes and more recently rows. The latter carries an extensive terminology of composition functions, some of which comes from Baroque practice (inversion, retrograde, transposition), some of a contemporary nature (hexachords, aggregates, interpolation). So we must consider first collections of pitches that come from traditional, contemporary, experimental and exotic / ethnic sources.

Most CAC systems enable access to libraries of scalic and tonality collections. Here’s a selection from the Opusmodus Tonality-Names library:


CAC  techniques can also help us form unique collections, sometimes referred to as pools, even fields of pitches. CACs enable pitch generation from algorithms based on mathematical representations of natural phenomena, for example wave forms such as modulated sine waves or the generation of Brownian noise. The composer can, by segmenting such output, devise intriguing collections. Here is such a generation of vectors converted into pitches:



We’ll now create a ‘unique’ scale from a four-note pattern, #1 from the Slonimsky Thesaurus:

Examining the second and third expressions:

  • (gen-repeat 5 (list sl-1) – makes 5 repeats
  •  (pitch-transpose ‘(0 1 6 7 12) . . . Transposes each repeat by its own intervals
  • (find-unique  . . . Looks for the unique pitches
  • (sort-asc . . . Puts them in ascending order
  • (gen-trim 7  . . . Trims the scale to the octave

6-8Of course most composers could work out such a scale on paper, but as we’ll see there are circumstances where the kind of mini-program explained above could be used in much more complex situations, particularly if we were wishing to create a raga-like scale or a scale inside a pitch continuum going outside the octave-repeat space.

The following example is a raga-like collection created through improvisation at the keyboard; it’s a ‘found’ scale consisting of two arpeggiated chords. It became the starting point for my own Touching the Distance . . . a sequence of studies and adventures for solo piano or Disklavier.

6-9The music developed from this raga-like scale is generated from the Hopalong algorithm often used to create imaginative fractal graphics. In a musical form it produces two outputs (x and y). See below its outputs are mapped to the scale above in the treble and bass clefs of the piano.

6-10Here is the Hopalong algorithm itself expressed in the Processing language (adapted from the Pythonism blog), followed by an image:


Find out more about Touching the Distance . . .  by downloading the full-score and code annotation from the composer’s web archive.

With this scale-raga in place let’s generate a sine wave and use its output to create a pool or field of pitches. The 32 samples generated in the output are in vectors.


Using a conversion function vector-map, you’ll see the plot of the gen-sine in a graph-like display. Such a visual representation can be very helpful is the composer wants to  take slices from the output to make a series of fragments.



Here are two fragments made from the sine-wave generation mapped on to the raga-scale. The second fragment is shown in notation.The idea of this function is similar to that of brassage, or time-domain fragmentation, a device commonly found in electroacoustic music, where segments of an input sound are lifted out before repasting into a new sound file.

You’ll have noticed  wave-form based generation of pitch can result in segments of repeated notes. One way round this is to apply ornamentation. Here’s the pool of pitches created from the sine-wave mapped onto the raga-scale, but now ornamented:


To emphasise the legato possibility of using the pitch-ornament function the output list has been converted into an OpusModusNotation (OMN) list. Notice the addition of the attribute leg and the note-length value s (1/16th). Whereas the first r-mat example was a snippet, the second (with legato) is a proper OMN list indicating length and pitch (and an attribute legato).

In the raga-scale example samples from a generation of vectors were mapped  onto a scale of pitches. In the next example we’re going to do something that would take some thinking about and calculation without computer-assistance: using integers to generate pitches. In fact these integers are guitar fingerings, or rather a tablature showing finger and fret on the 1st (E) and 4th (D) strings of the guitar.


Because we’re focusing on pitch, the final section of the code devoted to rhythm and defining the score  is omitted. We’ll concentrate on the pitch functions:


The functions pitch-transpose and integer-to-pitch are self-explanatory, but pitch-mix is new.

There’s another way to use integers: to generate chords. The example is composing a chorale, and scoring it for piano trio. We’ll create the piano part and pitch-demix the 4-part chordal texture so that the soprano and bass parts can be played by violin and cello. Again, we’ll only present the pitch material of the program.


This chorale demonstrates the potential of working with integers when constructing chords. It’s an effective way of controlling interval space, avoiding intervals that are either too small or too large. This technique is present in two compositions: Statementsfor piano, which will be discussed in a future post on ‘Structural Forms’, and Origami Letters, nine songs for tenor voice and piano or string quartet. Here’s the 16 chord sequence from the first song of Origami Letters:6-26

References, Links and Further Reading
Nigel Morgan: Origami Letters, for tenor voice and piano/string quartet
Nigel Morgan: Touching the Distance, for solo piano
OpusModus: Website

Leave a Reply