Pitch Class Series
Version 1, 1986 (Pascal) IntLens octave-complements &/or compounds the intervals of an input pitch-class series in all combinations of selection by interval class. The selection cycle iterates for each of six ranges of expansion, defined as <starting level for all ICs> to <target level for selected ICs>. These are: class to complement, class to compound, class to both; complement to compound, complement to both; and compound to both. Within each range and combination, series registrations are calculated separately per mirror form (P,I,R,RI) and coordinate order (X/Y or Y/X). The registrations total (48 times (2 to the power of half the octave modulus)). Each is output as a pitch series array of signed integers beginning with 0. Version 2, 1988 (Forth) Generation is expanded to specify for each Version 1 array all multiples within a range of nine octaves. The registrations are now examined as simultaneities, i.e., as chromatic saturation chords. Output for each is a half-page chart with graph and associated statistics, as for example: A separate SORT available also outside the main loop details relationships among these otherwise arbitrarily sequenced registrations. Up to sixteen criteria keys are applied, independently ascending or descending and in user-specified priority. Output is a vector-graph cascade with a sidebar of key values. The criteria are:
1) ExpLevel 5) Frame 9) MinInt 13) MinFreq 2) RowNum 6) Gaps>OD 10) MaxInt 14) MaxFreq 3) Factor 7) NumClust 11) IntSpread 15) FrqSpread 4) Range 8) MaxClust 12) IntsUsed 16) FrqsUsed
This version was optimized for prime-number octave dimensions through routines incorporated from SetTrans_P, below. AllDeg, one of IntLens's secondary functions, was fully developed later and separately as KRIKOS, score generator for several pieces of that name. Its algorithm is described with them under Compositions. IntLens 2 has a separate manual. Phil Winsor of UNT included the package among Summer 1989 curricular materials at National Chiao Tung University, Taiwan. Version 3, 1989 (APL) Initially a development environment port, producing the first dependable output graphs from function SORT, this version expanded IntLens's filing of intermediate data for subsequent retrieval by independent compositional software. Version 4, 2001 (J) A final port, more fully absorbing its precursors and in a contemporary APL incar- nation, this version anticipates its use as an external function with Csound-score building and related facilities incorporated from KRIKOS.
An old utility written in eight screens of Forth. Many fewer screens (or an APL one-liner) could deliver all that the subtitle promises. But its logic emphasizes the application of further constraints. Quoting the documentation:
Generate a permutation of the integers modulo-n (pitch classes), such that all possible unique successive differences are represented in absolute value (i.e., as interval classes) twice each. If the modulus is even, then signs modi- fying the instances of a given interval class must be opposite; if it is odd, they must be the same, with a final value redundancy. The number of array positions separating the instance pair of each interval class must be unique for odd moduli and nearly so (one exception) for even.Three arrays are output per example found: the pitch-class series, its intervals as signed classes, and the position separations per interval-class pair.
Prime-Only Octave Dimensions
Generalized Multiplicative Transform
Otherwise a standard PIRRI-matrices generator, this program assumed any octave modulus (from the dimension of its input array) and issued separate outputs per coordinate order or interval-multiplicative factor, to explore and document the following perspective:
If the multiplicative transform is applied to a series whose octave dimen- sion is evenly divisible, a full cycle of permutations preserving the total chromatic cannot be had. It is for this reason alone that our 12-tone system yields not five such transformations (via factors 6,5,4,3,2) but just one (via factor 5). A 6-tone system yields none, but not because of its smallness. The mere 7-tone yields already two (via 3,2) and the 11-tone, four (5,4,3,2). And these occur simply because 7 and 11 are not divisible, but are prime. If octave dimension is prime and the multiplicative transform is applied via all factors (cardinally &/or ordinally, leading to I, R or RI), all interme- diate permutations preserve the full chromatic. Further, each end series is seen integrally with them in a continuous generation. Freed from its special-case constraint, the transform now proves a generative principle. This context integrates simple augmentation as well. Before reduction in- modulo, any series multiple 'refracts' the series as-it-were in expansions ranging another octave &/or durations-cycle for each factor increment.This program's essential functions were later incorporated into IntLens 2, described above.
Peter Armstrong © 2006