Optimal ET sequence: Difference between revisions

From Xenharmonic Wiki
Jump to navigation Jump to search
m Update links and misc cleanup
Update to reflect how you're supposed to use this script since v1.14.0
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Many [[regular temperaments]] documented on the wiki are accompanied with an '''optimal GPV sequence'''. This gives [[generalized patent val]]s (GPVs) for [[equal temperament]]s which support the temperament, where each subsequent GPV included improves upon the [[TE error]] of the previous GPV.  
Many [[regular temperaments]] documented on the wiki are accompanied with an '''optimal ET sequence''', which suggests some useful [[equal tuning]]s to tune the temperament as well as [[mos scale]]s available. Technically, it gives [[generalized patent val]]s (GPVs) for [[equal temperament]]s which [[support]] the temperament, where each subsequent GPV included improves upon the [[TE error]] of the previous GPV, though no standard beginning cutoff to the list has been specified.


No standard beginning cutoff to the list has been specified.
== Computation ==
Optimal ET sequences can be computed by iterating through all GPVs, finding the error of each and comparing it with the last best error value.  


== Computation ==
Below is an example using [[Flora Canou]]'s [https://github.com/FloraCanou/temperament_evaluator Temperament Evaluator], using the <code>et_sequence</code> function from <code>te_equal.py</code>. Here is how the optimal ET sequence for [[No-threes subgroup temperaments #Yer_.28rank_3.29|Yer temperament]] was determined, by providing its comma basis and subgroup:
Optimal GPV sequences can be computed using [[Flora Canou]]'s [https://github.com/FloraCanou/temperament_evaluator Temperament Evaluator], using the <code>et_sequence</code> function. For example, here is how the optimal GPV sequence for [[No-threes subgroup temperaments #Yer_.28rank_3.29|Yer temperament]] was determined, by providing its comma basis and subgroup:


<pre>
<syntaxhighlight lang="python">
import et_sequence_error as ete
import numpy as np
import numpy as np
from lib.te_common import Subgroup
from lib.te_equal import et_sequence


ete.et_sequence_error(np.array([[7,-4],[-1,1],[-1,-1],[-1,0],[1,1]]), subgroup=[2,11,13,17,19])
et_sequence(np.column_stack([[7, -1, -1, -1, 1], [-4, 1, -1, 0, 1]]), subgroup=Subgroup ([2, 11, 13, 17, 19]))
</pre>
</syntaxhighlight>


Which produces the list: 13, 24, 33, 37, 46, 57, 70, 127.
Which produces the list: 11, 13, 24, 33, 37, 46, 57, 70, 127, 197eh.


[[Category:Regular temperament theory]]
[[Category:Regular temperament theory]]

Latest revision as of 09:01, 10 October 2025

Many regular temperaments documented on the wiki are accompanied with an optimal ET sequence, which suggests some useful equal tunings to tune the temperament as well as mos scales available. Technically, it gives generalized patent vals (GPVs) for equal temperaments which support the temperament, where each subsequent GPV included improves upon the TE error of the previous GPV, though no standard beginning cutoff to the list has been specified.

Computation

Optimal ET sequences can be computed by iterating through all GPVs, finding the error of each and comparing it with the last best error value.

Below is an example using Flora Canou's Temperament Evaluator, using the et_sequence function from te_equal.py. Here is how the optimal ET sequence for Yer temperament was determined, by providing its comma basis and subgroup:

import numpy as np
from lib.te_common import Subgroup
from lib.te_equal import et_sequence

et_sequence(np.column_stack([[7, -1, -1, -1, 1], [-4, 1, -1, 0, 1]]), subgroup=Subgroup ([2, 11, 13, 17, 19]))

Which produces the list: 11, 13, 24, 33, 37, 46, 57, 70, 127, 197eh.