Athematic Konzertstuck

The instruction:

perl drivath.pl parameters...
produces a one-movement piano concerto, dodecaphonic and athematic. Athematic more or less means that there are no exact repetitions, and no recognizable melodic motifs. The rhythms, on the other hand, are very tame (that could be changed)

The concerto eventually consists of a score, and a midi file created from the score. The following perl programs generate the score:

drivath.pl

Uses a parameter (all items optional)

rand_666   tritone_1   noise_self/default/default7/triadic/345   bridge_30   hocket_10,15,25   size_70

BECAUSE OF ANTIQUATED .bat USAGE AND DOS QUIRKS, USE UNDERSCORE, NOT EQUAL !!

Calls athni.pl, newathnj.pl, bridger.pl, and athno.pl via system() in perl.

If any of these fails, increases random seed and restarts

Details (what the system sees):

perl athni.pl @ARGV > ifile.txt
perl newathnj.pl > jfile.txt
perl bridger.pl > bridged.txt
perl athno.pl > kfile.txt
copy PARM.txt+atheader.txt+scora12.txt ath$ID
midi ath$ID

In this list, @ARGV is the parameter and $ID is the seed for random number generation. midi is my instruction for making a .mid file from a score, atheader.txt the top of the score, which defines instruments, etc.

The final results are the score ath$ID and the midi file ath$ID.mid

 



athni

Uses a parameter of the form:

rand_666   tritone_1   noise_self/default/default7/triadic/345   bridge_30   hocket_10,15,25   size_70

All items are optional.

Defines the series

writes PARM.txt which contains the input parameters and the series, e.g.:

{
SRAND 666
SER 8 3 1 6 7 4 10 2 9 5 11 0 0 11 5 9 2 10 4 7 6 1 3 8 4 9 11 6 5 8 2 10 3 7 1 0 0 1 7 3 10 2 8 5 6 11 9 4
NOISE SELF
BRIDGE 30
HOCKET 10,15,25
SIZE 70
}

 



newathnj

Athematic perpetual development, IGNORING DURATIONS

Contains MAIN paralel adentry enlistphr stdphr

Writes and reads noizez.txt : grades for all combinations of <= 12 distinct tones

There is no HARMONY OPTIMIZATION, a chord is either consonant or dissonant

Adds cadence and coda information for late phrases (last third)

The results are written to STANDARD OUTPUT

 



bridger.pl

Reads PARM.txt and the output of newathnj.pl

Modifies the phrases generated by newathnj by bridging notes over rests

Definitely spoils harmony (creates suspensions)

The results are written to STANDARD OUTPUT

The format is identical to the output of newathnj.pl, omitting the phrases creation log.

 



athno.pl

Reads PARM.txt

Reads noizez.txt : grades for all combinations of <= 12 distinct tones

Reads and uses the phrases generated by bridger.pl

Produces the complete score, with cadences and coda