musicMCT0.3.0 package

Analyze the Structure of Musical Scales

anazero_fingerprint

Are regularities within or between sets in a pair?

asword

Algebraic word of a set's step sizes

brightness_comparisons

Voice-leading brightness relationships for a scale's modes

brightnessgraph

Visualize brightness relationships among modes of a scale

carlos_step

Define a step size for one of Wendy Carlos's scales

clampitt_q

Voice leadings between inversions with maximal common tones

clockface

Visualize a set in pitch-class space

colornum

Reference numbers for scale structures

comparesignvecs

Do two sign vectors represent adjacent colors?

convert

Convert between octave measurements

coord_to_edo

Coordinate systems for scale representation

dft

The musical Discrete Fourier Transform of a pitch-class set

edoo

Perfectly even scales (the color white)

emb

How many instances of a subset-type exist within a scale? How many sca...

eps

The brightness ratio

evenness

How even is a scale?

flex_points

Voice-leading inflection points

fortenum

Forte number from set class

fpmod

Modulo division with rounding

fpunique

Unique real values up to some tolerance

get_relevant_rows

Which hyperplanes affect a given generic interval?

howfree

Count a scale's degrees of freedom

ianring

Look up a scale at Ian Ring's Exciting Universe of Music Theory

ifunc

All intervals from one set to another

ineqsym

Symmetries of hyperplane arrangements define equivalent scales

intervalspectrum

Specific sizes corresponding to each generic interval

isgwf

Is a scale n-wise well formed?

isproper

Rothenberg propriety

iswellformed

Well-formedness, Myhill's property, and/or moment of symmetry

isym

Test for inversional symmetry

ivec

Interval-class vector

j

Convenient just-intonation intervals and scales

make_anaglyph_ineqmat

Define hyperplanes for cross-type voice leadings

make_black_ineqmat

Define hyperplanes for transposition-sensitive arrangements

make_infrared_ineqmat

Define hyperplanes for infrared arrangements

make_offset_ineqmat

Translate a hyperplane arrangement to a new center

make_roth_ineqmat

Define hyperplanes for Rothenberg arrangements

make_white_ineqmat

Define hyperplanes for white arrangements

makeineqmat

Define hyperplanes for the Modal Color Theory arrangements

maxeven

Maximally even scales

meantone_fifth

Define a tempered fifth for various meantone scales

minimize_vl

Smallest voice leading between two sets

musicMCT-package

musicMCT: Analyze the Structure of Musical Scales

normal_form

Hook's OPTIC normal forms

optc_test

Does a scale lie in the canonical fundamental domain for OPTC symmetri...

populate_flat

Randomly generate scales on a flat

primary_hue

Primary colors

primeform

Prime form of a set using Rahn's algorithm

project_onto

Closest point on a given flat

quantize_color

Find a scale mod k that matches a given color

quantize_hue

Find a scale mod k that matches a given hue

readSCL

Import a Scala (.scl) file as a scale

realize_stepword

Define scale by entering its relative step sizes

rotate

Circular rotation of an ordered tuple

same_hue

Do two scales lie on the same ray?

saturate

Modify evenness without changing hue

sc_comp

Set class complement

sc

Set class from Forte's list

scale_palette

Orbit of a scale under symmetries of hyperplane arrangement

set_from_signvector

Create a scale from a sign vector

set_to_distribution

Convert between pitch-class sets and distributions

signed_interval_class

Ordered pitch-class interval represented as interval class with sign

signvector

Detect a scale's location relative to a hyperplane arrangement

sim

Scalar (and interscalar) interval matrix

simplify_scale

Best ways to regularize a scale

step_signvector

Specify a scale's step pattern with a sign vector

subset_multiplicities

Count the multiplicities of a subset-type's varieties

subset_varieties

Specific varieties of scalar subsets given a generic shape

subsetspectrum

Subset varieties for all subsets of a fixed size

surround_set

Random scales uniformly distributed on a hypersphere around an input

svzero_fingerprint

Distinguish different types of interval equalities

tc

Transpositional combination & pitch multiplication

tn

Transposition and Inversion

tndists

Distances between continuous transpositions of a set

tnprime

Transposition class of a given pc-set

tsym

Test for transpositional symmetry

vl_dist

How far apart are two scales?

vl_generators

Which transpositions give elementary voice leadings?

vl_rolodex

Minimal voice leadings to all transpositions of some Tn-type mod k

vlsig

Elementary voice leadings

whichmodebest

Smallest crossing-free voice leading between two pitch-class sets

whichsvzeroes

Which interval-comparison equalities does a scale satisfy?

writeSCL

Create a Scala tuning file from a given scale

z

Frequency ratios to logarithmic pitch intervals (e.g. semitones)

zmate

Twin set in the Z-relation (Z mate)

Analysis of musical scales (& modes, grooves, etc.) in the vein of Sherrill 2025 <doi:10.1215/00222909-11595194>. The initials MCT in the package title refer to the article's title: "Modal Color Theory." Offers support for conventional musical pitch class set theory as developed by Forte (1973, ISBN: 9780300016109) and David Lewin (1987, ISBN: 9780300034936), as well as for the continuous geometries of Callender, Quinn, & Tymoczko (2008) <doi:10.1126/science.1153021>. Identifies structural properties of scales and calculates derived values (sign vector, color number, brightness ratio, etc.). Creates plots such as "brightness graphs" which visualize these properties.

  • Maintainer: Paul Sherrill
  • License: GPL (>= 3)
  • Last published: 2025-11-03