Computes a chord's interval vector, after Parncutt et al. (2018) .

int_vec(x)

# S3 method for pc_set
int_vec(x)

# S3 method for default
int_vec(x)

# S3 method for int_vec
as.numeric(x, ...)

# S3 method for int_vec
as.character(x, ...)

Arguments

x

Object to analyse.

...

Further arguments passed to other methods.

Value

An integer vector of length 6, where the ith element indicates the number of times that the pitch-class interval i is found in the chord.

Details

An interval vector of class "int_vec", describing how often each pitch-class interval appears in a chord. There are six possible interval classes: 1, 2, 3, 4, 5, and 6 semitones. Parncutt et al. (2018) cite Forte (1977) for this technique.

References

Forte A (1977). The structure of atonal music. Yale University Press, New Haven, CT.

Parncutt R, Reisinger D, Fuchs A, Kaiser F (2018). “Consonance and prevalence of sonorities in Western polyphony: Roughness, harmonicity, familiarity, evenness, diatonicity.” Journal of New Music Research. doi: 10.1080/09298215.2018.1477804 .

Examples

int_vec(c(60, 64, 67)) # major triad
#> Interval vector: 0 0 1 1 1 0
int_vec(c(60, 63, 66)) # diminished triad
#> Interval vector: 0 0 2 0 0 1