vl_generators {musicMCT} | R Documentation |
Which transpositions give elementary voice leadings?
Description
Just as the transpositions of the diatonic scale can be generated by
Hook (2008)'s doi:10.1515/9781580467476-008 elementary
"signature transformation," the transpositional voice leadings of any
set can generally be decomposed into a small number of basic motions.
These motions correspond to the arrows in a set's brightnessgraph()
.
(The qualifier "generally" is needed because of certain problematic edge
cases, such as the perfectly even scales of edoo()
whose minimal voice
leadings always involve entirely parallel motion, which cannot be
derived from "mode shift" voice leadings represented on a brightness graph.)
vl_generators()
identifies these basic voice-leading motions.
Usage
vl_generators(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 |
rounder |
Numeric (expected integer), defaults to |
Value
2-by-m matrix whose m columns represent the m distinct voice-leading generators. The top row indicates the generic size of each interval; the bottom row indicates the specific size. Results are sorted so that the first row (generic intervals) is strictly increasing.
Examples
diatonic_scale <- c(0, 2, 4, 5, 7, 9, 11)
melodic_minor <- c(0, 2, 3, 5, 7, 9, 11)
vl_generators(diatonic_scale)
vl_generators(melodic_minor)
vl_generators(j(dia))
maj7 <- c(0, 4, 7, 11)
vl_generators(maj7)