Skip to contents

The essential step in creating the brightness graph of a scale's modes is to compute the pairwise comparisons between all the modes. Which ones are strictly brighter than others according to "voice-leading brightness" (see "Modal Color Theory," 6-7)? This function makes those pairwise comparisons in a manner that's useful for more computation. If you want a human-readable version of the same information, you should use brightnessgraph() instead.

Usage

brightness_comparisons(set, edo = 12, rounder = 10)

Arguments

set

Numeric vector of pitch-classes in the set

edo

Number of unit steps in an octave. Defaults to 12.

rounder

Numeric (expected integer), defaults to 10: number of decimal places to round to when testing for equality.

Value

An n-by-n matrix where n is the size of the scale. Row i represents mode i of the scale in comparison to all 7 modes. If the entry in row i, column j is -1, then mode i is "voice-leading darker" than mode j. If 1, mode i is "voice-leading brighter". If 0, mode i is neither brighter nor darker, either because contrary motion is involved or because mode i is identical to mode j. (Entries on the principal diagonal are always 0.)

Details

Note that the returned value shows all voice-leading brightness comparisons, not just the transitive reduction of those comparisons. (That is, dorian is shown as darker than ionian even though mixolydian intervenes in the brightness graph.)

Examples

# Because the diatonic scale, sc7-35, is non-degenerate well-formed, the only
# 0 entries should be on its diagonal.
brightness_comparisons(sc(7, 35))
#>   1  2  3  4  5  6  7
#> 1 0 -1 -1 -1 -1 -1 -1
#> 2 1  0  1  1 -1  1  1
#> 3 1 -1  0  1 -1 -1  1
#> 4 1 -1 -1  0 -1 -1 -1
#> 5 1  1  1  1  0  1  1
#> 6 1 -1  1  1 -1  0  1
#> 7 1 -1 -1  1 -1 -1  0

mystic_chord <- sc(6,34)
colSums(sim(mystic_chord)) # The sum brightnesses of the mystic chord's 6 modes
#> [1] 25 31 31 31 31 31
brightness_comparisons(mystic_chord) 
#>   1  2  3  4  5  6
#> 1 0 -1 -1 -1 -1 -1
#> 2 1  0  0  0  0  0
#> 3 1  0  0  0  0  0
#> 4 1  0  0  0  0  0
#> 5 1  0  0  0  0  0
#> 6 1  0  0  0  0  0
# Almost all 0s because very few mode pairs are comparable.
# That's because nearly all modes have the same sum, which means they have sum-brightness
# ties, and voice-leading brightness can't break a sum-brightness tie.
# (See "Modal Color Theory," 7.)