Skip to contents

tertianSet is one of humdrumR's types of tonal data, representing Western tertian harmonies. tertianSet is a subclass of diatonicSet (and thence, struct).

Usage

tset(
  root = 0L,
  signature = 0L,
  alterations = 0L,
  cardinality = 3L,
  extension = NULL,
  inversion = 0L
)

is.tertianSet(x)

Details

The only structural addition, compared to diatonicSet, is the Extensions slot. This slot indicates which tertian chord members are active in the chord. There are seven possible chord members: the root, third, fifth, seventh, ninth, eleventh, and thirteenth. Every possible combination of these seven degrees is represented by a single integer, corresponding to the 7-bit representation of on/offs on the seven degrees in reverse order (13, 11, 9, 7, 5, 3, 1). For example, the integer 15 corresponds to a seventh chord: in binary, 15 is 0001111. The initial three zeros indicate that the 13th, 11th, and 9th are not part of the harmony, while the four ones indicate that the root, third, fifth, and seventh are part of the harmony. Ultimately, adding or removing a chord degree from a harmony can be achieved by adding the power of two associated with that degree:

  • Root: \(\pm 1\)

  • Third: \(\pm 2\)

  • Fifth: \(\pm 4\)

  • Seventh: \(\pm 8\)

  • Ninth: \(\pm 16\)

  • Eleventh: \(\pm 32\)

  • Thirteenth: \(\pm 64\)

tertianSet has many specific methods defined for reading/writing harmonic information.

See also

The main way to create tertianSet S4 objects is with the tertianSet() pitch parser.

Other Tonal S4 classes: diatonicSetS4, tonalIntervalS4