vlsig {musicMCT} | R Documentation |
Elementary voice leadings
Description
Calculates the "voice-leading signature" of the set's elementary transpositions
as determined by vl_generators()
.
Usage
vlsig(set, index = 1, display_digits = 2, edo = 12, rounder = 10)
Arguments
set |
Numeric vector of pitch-classes in the set |
index |
Integer: which voice-leading generator should be displayed? Defaults to |
display_digits |
Integer: how many digits to display when naming any non-integral interval sizes. Defaults to 2. |
edo |
Number of unit steps in an octave. Defaults to |
rounder |
Numeric (expected integer), defaults to |
Details
Note that the voice leadings determined by vlsig()
can be different from the
corresponding ones at the same T_n
level in vl_rolodex()
. The latter function
prioritizes minimal voice leadings, whereas vlsig()
prioritizes elementary voice
leadings derived from a set's brightnessgraph()
. In particular, this means that
vlsig()
voice leadings will always be ascending, involve at least one common tone,
and involve no contrary motion. See the odd_pentachord
voice leadings in the Examples.
Value
List with three elements:
"vl" which shows the distance (in
edo
steps) that each voice moves"tn" which indicates the (chromatic) transposition achieved by the voice leading
"rotation" which indicates the scalar transposition caused by the voice leading
Examples
major_scale <- c(0, 2, 4, 5, 7, 9, 11)
vlsig(major_scale) # Hook's elementary signature transformation
pure_major_triad <- j(1, 3, 5)
vlsig(pure_major_triad, index=1)
vlsig(pure_major_triad, index=2)
odd_pentachord <- c(0, 1, 4, 9, 11) # in 15-edo
vlsig(odd_pentachord, index=2, edo=15)
vl_rolodex(odd_pentachord, edo=15)$"8"