# Tuning map

A **tuning map** represents the tuning of a regular temperament. It can take a vector representation of an interval (monzo) as input and outputs its pitch, usually measured in cents or octaves.

A tuning map has one entry for each basis element of the temperament, giving its size in cents or octaves (or any other logarithmic pitch unit).

It may be helpful, then, to think of the units of each entry of a tuning map as [math]{\large\mathsf{¢}}\small /𝗽[/math] (read "cents per prime"), [math]\small \mathsf{oct}/𝗽[/math] (read "octaves per prime"), or any other logarithmic pitch unit per prime (for more information, see Dave Keenan & Douglas Blumeyer's guide to RTT: units analysis).

## Generator tuning map

A **generator tuning map** is like a (temperament) tuning map, but each entry gives the size in cents or octaves of a different generator, rather than of a formal prime.

It may be helpful, then, to think of the units of each entry of a generator tuning map as [math]{\large\mathsf{¢}}\small /𝗴[/math] (read "cents per generator"), [math]\small \mathsf{oct}/𝗴[/math] (read "octaves per generator"), or any other logarithmic pitch unit per generator.

From the generator tuning map *G* and the mapping *M*, we can obtain the tuning map *T* as

$$T = GM$$

To go the other way — that is, to find the generator tuning map from the (primes) tuning map — we can multiply the tuning map by any right-inverse of the mapping, such as the pseudoinverse *M*^{+}, as in

$$G = TM^{+}$$

For a detailed explanation see Dave Keenan & Douglas Blumeyer's guide to RTT: tuning in nonstandard domains #9. Find pseudoinverse.

## With respect to JIP

JI can be conceptualized as the temperament where no intervals are made to vanish, and as such, the untempered primes can be thought of as its generators, or of course its basis elements. So, JI subgroups have generator tuning maps and tuning maps too; the generator tuning maps and tuning maps are always the same thing as each other, and they are all subsets of the entries of the JIP.

## Error map

An **error map**, also known as **mistuning map** or **retuning map**, is like a tuning map, but each entry shows the signed amount of deviation from the target value (usually JI), i.e. the error. It is therefore equal to the difference between the tempered tuning map and the just tuning map. If we have an error map *Ɛ*, tempered tuning map *T*, and just tuning map *J*, it follows that

$$\mathcal{E} = T - J$$

## Example

Consider meantone temperament, with the mapping [⟨1 1 0], ⟨0 1 4]]. Temperaments, as represented by mappings, remain abstract; while this mapping does convey that the generators are ~2/1 and ~3/2, it does not specify exact tunings for those approximations. One example tuning would be quarter-comma meantone, where the octave is pure and the perfect fifth is 5^{1/4}; this gives a generator tuning map of ⟨1200.000 696.578].

The tuning map from *G* = ⟨1200.000 696.578] and *M* = [⟨1 1 0], ⟨0 1 4]] is *T* = ⟨1200.000 1896.578 2786.314]. For the error map we use *J* = ⟨1200.000 1901.955 2786.314] and find *Ɛ* = ⟨0.000 -5.377 0.000], showing us prime 3 is tempered flat by 5.377 cents while primes 2 and 5 are pure.

So, to answer the question, "how many cents is the approximation of the interval 16/15 in quarter-comma meantone?" we use the dot product to map 16/15's prime-count vector [4 -1 -1⟩ via the tuning map given above, 4×1200.000 + (−1) × 1896.578 + (−1) × 2786.314 = 117.108 ¢. Similarly, to answer "how many cents is the approximation different from JI?" we go through the same process via the error map: 4×0.000 + (−1) × (-5.377) + (−1) × 0.000 = +5.377 ¢.

Another example tuning for meantone would be the TE tuning, which is the default that Breed's popular RTT web tool provides. This gives us a tuning map of ⟨1201.397 1898.446 2788.196] and error map of ⟨+1.397 -3.509 +1.882]. To answer the same questions about 16/15 in this tuning of meantone, we use the same prime count vector, but map it with these different tuning and error maps. So that gives us 4 × 1201.397 + (−1) × 1898.446 + (−1) × 2788.196 = 118.946 ¢ and 4 × 1.397 + (−1) × (−3.509) + (−1) × 1.882 = +7.215 ¢, respectively. And that is our answer for TE meantone.

## Cents versus octaves

Sometimes you will see tuning maps given in octaves instead of cents. They work the same exact way. The only difference is that these octave-based tuning maps have each entry divided by 1200. For example, the quarter-comma meantone tuning map, in octaves, would be ⟨1200 1896.578 2786.314]/1200 = ⟨1 1.580 2.322]. If we dot product [4 -1 -1⟩ with that, we get 4 × 1 + (−1) × 1.580 + (−1) × 2.322 = 0.098, which tells us that 16/15 is a little less than 1/10 of an octave here.

## With respect to linear algebra

A tuning map can be thought of either as a one-row matrix or as a covector. The same is true of error maps and generator tuning maps.