RTT library in Wolfram Language

From Xenharmonic Wiki
Jump to navigation Jump to search

This is a library of functions for working with regular temperament theory, implemented in Wolfram Language.

The code is maintained and shared on GitHub here: https://github.com/cmloegcmluin/RTT

More details can be found on the README there.

Functions

The functions implemented include:

canonicalForm[t]

Puts the given mapping or comma basis into canonical form (i.e. defactored Hermite form): it defactors it and puts it into HNF.

dual[t]

For a mapping, returns the canonical form of the basis for its null-space. For a comma basis, vice-versa: returns the canonical form of its mapping.

mapMerge[t1, t2...]
commaMerge[t1_, t2...]

Per Temperament merging.

sum[t1, t2]
diff[t1, t2]

Per Temperament addition.

changeB[t1, b]

Per Interval basis#Changing interval basis.

Tuning

Tuning-related functions, such as diamond tuning ranges, generators in cents per popular tuning methods, etc. are forthcoming.

EA

If you are interested in exterior algebra, this library also includes modules with helpful functions.

eaCeanonicalForm[w]

eaDual[w]

progressiveProduct[w1, w2]
regressiveProduct[w1, w2]
interiorProduct[w1, w2]

eaSum[w1, w2]
eaDiff[w1, w2]

multivectorToMatrix[w]
matrixToMultivector[t]