User:Frostburn/Geometric algebra for regular temperaments: Difference between revisions

Frostburn (talk | contribs)
m Mapping: Comments about non-integral period monzos.
Frostburn (talk | contribs)
Optimizing database keys: Add notes about generalizing to higher ranks.
Line 97: Line 97:
== Optimizing database keys ==
== Optimizing database keys ==
As mentioned before wedgies can be used as unique identifiers of temperaments. The geometric algebra for n-dimensional space is 2<sup>n</sup>-dimensional, but most of the wedgie components are zero and can be dropped. Additionally in the case of rank-2 temperaments there's a neat little [[Wedgies_and_multivals#Constrained_wedgies|trick]] that allows us to drop even more components. In the subgroup ''o''.''p''<sub>2</sub>.''p''<sub>3</sub>.(…).''p''<sub>n</sub> calculate
As mentioned before wedgies can be used as unique identifiers of temperaments. The geometric algebra for n-dimensional space is 2<sup>n</sup>-dimensional, but most of the wedgie components are zero and can be dropped. Additionally in the case of rank-2 temperaments there's a neat little [[Wedgies_and_multivals#Constrained_wedgies|trick]] that allows us to drop even more components. In the subgroup ''o''.''p''<sub>2</sub>.''p''<sub>3</sub>.(…).''p''<sub>n</sub> calculate
:<math>\mathbf{T}' = < 1, \log_o(p_2), \log_o(p_3), \ldots, \log_o(p_n) ] \wedge < 0, W_{12}, W_{13}, \ldots, W_{1n} ]</math>
:<math>\mathbf{T}' = \langle 1, \log_o(p_2), \log_o(p_3), \ldots, \log_o(p_n) \rbrack \wedge \langle 0, W_{12}, W_{13}, \ldots, W_{1n} \rbrack </math>
If the temperament is reasonably close to just intonation it can be recovered by rounding <math>\mathbf{T}'</math> to the nearest integer.
If the temperament is reasonably close to just intonation it can be recovered by rounding <math>\mathbf{T}'</math> to the nearest integer.


Examples in 2.3.5 include [[Meantone_family#Meantone|Meantone]] ~ [1, 4], [[Augmented_family#Augmented|Augmented]] ~ [3, 0] and [[Limmic_temperaments#5-limit_.28blackwood.29|Blackwood]] ~ [0, 5], [[Slendro_clan#Semaphore|Semaphore]] ~ [2, 1] in 2.3.7 and [[Gamelismic_clan#Miracle|Miracle]] ~ [6, -7, -2] in 2.3.5.7.
Examples in 2.3.5 include [[Meantone_family#Meantone|Meantone]] ~ [1, 4], [[Augmented_family#Augmented|Augmented]] ~ [3, 0] and [[Limmic_temperaments#5-limit_.28blackwood.29|Blackwood]] ~ [0, 5], [[Slendro_clan#Semaphore|Semaphore]] ~ [2, 1] in 2.3.7 and [[Gamelismic_clan#Miracle|Miracle]] ~ [6, -7, -2] in 2.3.5.7.
Note that this generalizes to arbitrary rank. For example in rank 3:
:<math>\mathbf{T}' = \langle 1, \log_o(p_2), \log_o(p_3), \ldots, \log_o(p_n) \rbrack \wedge \langle \langle 0, \ldots, 0, W_{123}, W_{124}, \ldots, W_{1(n-1)n} \rbrack \rbrack</math>
Where <math>W_{1ij}</math> are the 3-wedgie components associated with ''e<sub>1</sub>'' of a temperament <math>\mathbf{T}</math> and are back-filled into a 2-val. If <math>\mathbf{T}</math> is sufficiently good we have <math>\mathbf{T} = \mathrm{round}(\mathbf{T}')</math>.
As an example [[Marvel_family#Marvel|Marvel]] ~ [1, 2, -2] which is just the non-two monzo components of the [[225/224|marvel comma]] reversed and with alternating signs. This makes sense: a comma's two's component can be deduced from the other components by assuming that the comma has a positive size less than the octave.