The analysis, partly musical and partly algorithmic, follows.
Consider, for instance, the following example:
( everywhere, obviously, 0=C 1=C# 2=D, etc. )
K0 and K1 agree up to the A natural in the second bar, where the 2nd original form (resp. table form) enters.
They will (hopefully) be perceived as variations. Note that K0 is a join folded over 3 voices, while K1 is folded over 4.
In addition to these basic lines there are two additional voices playing the various linear aspects, in equal notes, in optimal
harmony, and some doubling. The general harmony is refined by trills.
The rondo ends with a coda.
Notice that this is a purely monophonic device.
In this case, all satzes share an Ab in the same position; satzes 1,2,3 share an F#, satzes 3,4 an Eb, etc.
Also, satz 2 is a crab-mirror transpose of satz 1, satz 4 a mirror transposition of satz 1, etc.
These 4 measures could form a full satz cycle, as they are all linked by the Ab near the end.
The movement opens with two presentations of the cycle of satzes, with matching tones emphasized:
The "near enough transposition" may be considered a variant of "tonal answer". Of course, the transposition may be exact, e.g. :
These motives are emphasized by longer durations; the short notes following will form the countersubject, but the preceding
or intervening
short notes, if any, add variety to the subject.
The results are easily recognizable – maybe too obvious ... As all the linear aspects are examined,
mirror forms (or cancer or table forms) are created for each subject.
Here is an example of the "rough" form, in two voices, of an exposition based on the first subject above:
The first two entrances of the subject are based on the join mirror+cancer+table, the third is from the join cancer+orig;
they still sound as transpositions of each other.
The fugue, like the other parts of the concerto, ends with a coda, built on the four-parts presentation.
1. The set (or series) is a specific ordering of all twelve notes of the semitonal scale.
All of this is very standard tone row framework, from the 1920–30s . The way I see it, each note has to be
justified : around it must appear a transposition of one of the
linear aspects, in right order. "Around" means "in all the voices"; "right order" means that if
note B follows note A in the row, B should not start before A is heard.
Once the series – i.e. the linear aspect and its transposition – has beens selected,
and a note in that series played, the following note is already determined, so the only question is
where and when will it appear.
Practically, this means one must decide how long the current note lasts and whether the following note will be sounded in the
same voice or in another voice – see "folding". In either case, that note may be preceded
by a rest. This is all the arbitrariness there is
in serial composition, plus the rarer choice the next series, when the current series ends.
Thus, there are very restricted development possibilities
which makes for easy programming; the choices are constrained by the requirement that the result should also be thematic.
Besides dodecaphonic "themes", i.e. sections in one or more voices, containing notes
of arbitary durations, the counterpoint uses simpler "passages" consisting of series,
joins and fillers.
All the notes in the passage have the same duration; note also that the passage is usually quite long: at least 12 notes
for a series, and maybe longer.
These play a role similar to scales and arpeggios in a tonal composition – somewhat neutral
material surrounding the themes.
An example of folding a sequence of notes:
The join above can be turned into a cyclic join:
A filler is a 2-voice counterpoint of a join and a series. It may use augmentation,
but, in a single voice, all notes have the same duration. E.g.:
For instance, if the series is:
All these examples presume "default" harmony, i.e. seconds and sevenths dissonant.
An ad-hoc method to lessen dissonance (i.e. chords containing intervals of 1 or 2 semitones):
Assume, e.g. that the counterpoint algorithm produces:
This is consistent with the "justification" requirement for serial music. The counterpoint above becomes:
SI/RE - DO should be harmonized as V/V7/VII7b - I/i with any fitting triad for LA/MI/MIb. The fuller the harmony,
the better the cadence. Components may be missing, e.g. I/i may be reduced to tonic only, V7 played without third
or fifth – and the grade of the cadence reduced accordingly.
Such cadences may appear by chance in the counterpoint – they are not part of the design. In fact, the common melodic
cadences DO SI DO and DO RE DO may also be there, although a single melodic dodecaphonic line should not contain them. In any case,
I ignore DO SI DO and DO RE DO.
Notice that the cadence harmony is not influenced by the overall harmony chosen. A full close is a tonal/melodic full close.
This is a program which will generate 3 midi files, using a few parameters. The three files encode the
three movements of the concerto:
These may be played in any order, although the order above seems best to me. What you hear are the 9 channels
of the midi player, which sound quite bad on my computer. So this is basically conceptual art, as I cannot really control
orchestration. Whatever comes out may be, if not beautiful, interesting as an automatic serial, thematic composition.
The reason it exists is hidden in the mists of time...
I make no claims about its pianistic or orchestral value, and
if you don't like the result, try some other parameters.
Rondo
The rondo is built from joins of the various linear aspects
of the series: orig+orig, orig+mirror,
orig+crab, orig+table, mirror+orig, mirror+mirror, ... etc. There are two or three terms in the joins.
These are then folded over several voices; the shortest result is
the rondo refrain, the others will serve as episodes.
Therefore, the music is based on certain polyphonic patterns, not on tunes. The durations, although irregular,
are determined by pitch, so the folds which start with the same pitches will sound the same initially,
and change only when a different linear aspect appears in the join.
Slow variations
This is a form of my own invention, from ancient times, say 1970. Pick several transpositions of the
4 series forms, and fix the rhythms so that if the first selection has an E on the 3rd beat,
the following one will also have an E on the 3rd beat. The more such matches, the better. The last selection should
also match the first, e.g. both have a C# on the last beat. Then the selections can be played in order,
cyclically, with some feeling of structure, because of the repeating matching tones.
Here is an example; the matching notes are shown in color. Each measure contains one series presentation, with its
proper rhythm -- let's call this a satz.
After these presentations, the satzes – by now reasonably familiar – are played in counterpoint by the piano and orchestra.
In the following section, the piano plays the satz cycle in counterpoint with fillers, while the orchestra again
supplies tone colors. In addition, cadences which occur in the counterpoint are emphasized, leading to the movement final close:
an arpeggio presentation of the series on the piano solo, followed by the final cadence, piano and orchestra.
Fugue
The fugue subject+countersubject is generated by examining various joins, looking for short motives
in "near enough" transposition. For instance, in the following example, the six quarter notes form such a subject:
F# A# B is transposed down by 2,3 semitones to Eb G A.
The fugue consists of expositions of the subjects in two, three and four voices. The program optimizes
the exposition, by looking for best harmony under various transpositions, augmentation, subject choice and time of entry.
Each such exposition is
presented twice: first "rough", then after dissonance smoothing by trills and cambiatas.
The presentations are separated by gaps of 1-2 measures. Most of the trilling material is assigned to the soloist.
Finally, wherever the structure built above is too thin (the rests between the expositions, parts of the score where only
one voice is active) one or two new voices are added, consisting of the various linear aspects of the series, with uniform
durations. These are optimized for best harmony, and substitute for the usual episodes in a fugue.
General properties
dodecaphonic
2. No note is repeated within the set, once another note has followed it.
More precisely,
assuming the series: eb bb f# f D C B a e c# g# g ,
is not allowed.
3. The set may be stated in any of its "linear aspects":
4. The set in any of its four linear aspects may be started upon any degree of the semitonal scale.
prime = original
inversion = mirror
retrograde = crab
retrograde inversion
= crab-mirror
= table
thematic
The music should contain recognizable themes and motives, i.e. recognizable by hearing by me.
The structure should be reasonably obvious, i.e. not the passacaglia in "Wozzeck", rather a baroque passacaglia.
Besides, as a concerto it must have the contrasts solo/tutti and
a virtuosity element – about which I have no idea,
as I cannot play any instrument. Eventually, there is much repetition and theme passing between the
piano and orchestra – I could not think of anything better. In order to produce variety,
the themes are repeated in counterpoint – again I could not think of any other variation method consistent
with dodecaphony. The main impediment is that there are no shorter motifs than the complete series.
contrapunctal
generating themes:
Bb B Ab F# D C# A F Eb C G E D Bb F# F C# ...
over 3 voices:
Note that the durations are random, and a note may start anywhere, except before a preceding note (i.e.
a note which precedes it in the sequence). This is a polyphonic procedure; the resulting
harmony may need correction.
The cell is 20 notes long:
C# D Eb Bb C E Ab G F B A F# E Bb Ab G B Eb F C. After any number of such cells, C# D must appear,
to complete the 12 notes of the last series.
Voice 1 is a 23 note join, voice 2 an augmented series, in "2nd species" counterpoint.
Parameters
During composition, the program will make numerous choices – some deterministic, e.g. based on
optimization, and some random. The random choices are made using a pseudorandom generator initiated with the
supplied random seed. In particular, the basic series – unique for the whole concerto – is determined
using this random generator. However, the other parameters supplied will also influence the series –
tritone is an obvious case. The choice of harmony may also be such that the full composition fails,
and it will then be restarted
with a different seed.
if specified, the basic series may not contain tritones between adjacent notes
One may select the harmony type to be used overall. The choices are:
This is an approximation to basic triadic harmony. Thirds and sixths get very high grades, fifth and octaves somewhat
lower grades, major seconds are bad, minor seconds worst... Chords are graded by averaging all the intervals they contain.
This means that only groups of 1,2,3 and 4 notes from the series, transposed or inverted
will be considered consonant.
it should be harmonized only by the chords:
with their transpositions and inversions.
I have not experimented with this option, mostly because it is difficult to check that the harmony
has been actually optimized in the various counterpoints.
A code like this means that the intervals of 3,4 and 5 semitones and their inversions are consonant.
Unisons/octaves are always consonant (according to Schoenberg they should be dissonant) .
All the other intervals are dissonant. Chords are graded by averaging all the intervals they contain.
Harmony and dissonance
reduce dissonance using trills
With a lot of good will, the trills may be considered a stylistic or virtuoso element.
reduce dissonance using cambiata
Both procedures mix notes from the different voices, so they produce some relief from serial predictability.
Enhancements
Passages
Some of the techniques employed – e.g. slow variations – are inherently monophonic. Some variety is
obtained by adding series, joins and fillers, as "neutral" passage material. The resulting
counterpoint is optimized for harmony.
This technique is used in all the parts of the concerto. For instatance, in the fugue,
up to four voices play the subjects/countersubjects, and other
up to two voices "thicken" the resulting structure by playing series. This is similar to the use of scales and arpeggios in
tonal music.
Coda, ending in a full cadence if possible
coda, desiderata:
The coda should be playable by the whole orchestra and piano; traditionally a piece ends with a big bang.
It should not be too long, but related to the preceding material (development problem, again). In addition it should be somehow
cadential, with a feeling of full close – whatever that may mean. I decided that a close is one of a list of melodic
and harmonic cadences, as explained below; it is played molto rallentando, leading to rest.
cadences
A cadence is a harmonization of one of the melodic cadences:
(all of the above in minor or Major scales)
If none of the cadences above is available, in any key, then the music will halt just by repeating some consonant
chord – in the worst case, a single note.coda, techniques
Each of the three parts of the concerto ends with a coda
as described above. The program identifies cadences near the end of the section –
these are note groups in all the voices, that may be rearranged as melodic cadences with their proper harmony
– then emphasizes such a cadence by slower rhythm and
orchestration. The last cadence recognized is particularly embelished, as it will serve to conclude the section.