Kite's thoughts on pergens: Difference between revisions

Wikispaces>TallKite
**Imported revision 626602309 - Original comment: **
Wikispaces>TallKite
**Imported revision 626613657 - Original comment: **
Line 1: Line 1:
<h2>IMPORTED REVISION FROM WIKISPACES</h2>
<h2>IMPORTED REVISION FROM WIKISPACES</h2>
This is an imported revision from Wikispaces. The revision metadata is included below for reference:<br>
This is an imported revision from Wikispaces. The revision metadata is included below for reference:<br>
: This revision was by author [[User:TallKite|TallKite]] and made on <tt>2018-02-19 06:59:13 UTC</tt>.<br>
: This revision was by author [[User:TallKite|TallKite]] and made on <tt>2018-02-19 11:49:21 UTC</tt>.<br>
: The original revision id was <tt>626602309</tt>.<br>
: The original revision id was <tt>626613657</tt>.<br>
: The revision comment was: <tt></tt><br>
: The revision comment was: <tt></tt><br>
The revision contents are below, presented both in the original Wikispaces Wikitext format, and in HTML exactly as Wikispaces rendered it.<br>
The revision contents are below, presented both in the original Wikispaces Wikitext format, and in HTML exactly as Wikispaces rendered it.<br>
Line 337: Line 337:
For a pergen (P8/m, M/n), let x be any number that divides m, R be any 3-limit ratio, and z be any integer. The interval z·P8 ± x·R splits into x parts. Let y be any number that divides n, the interval z·M ± y·R splits into y parts. If x divides both m and n, the interval z·P8 + z'·M ± x·R splits into x parts (z' is any integer).
For a pergen (P8/m, M/n), let x be any number that divides m, R be any 3-limit ratio, and z be any integer. The interval z·P8 ± x·R splits into x parts. Let y be any number that divides n, the interval z·M ± y·R splits into y parts. If x divides both m and n, the interval z·P8 + z'·M ± x·R splits into x parts (z' is any integer).


||~ pergen ||~   ||~ secondary splits &lt;= P12 ||
||~ category ||||~ __pergen__ ||~ secondary splits &lt;= P12 ||
|| (P8/2, P5) || half-8ve || M2/2, m6/2, A4/2, d12/2 ||
||~ halves ||||= all pergens ||= M3/2, d5/2, A5/2, m7/2, M9/2, A11/2 ||
|| (P8, P5/2) || half-5th || P11/4, ||
||  ||= (P8/2, P5) ||= half-8ve ||= M2/2, A4/2, m6/2, M10/2, d12/2 ||
||  ||   ||   ||
||   ||= (P8, P4/2) ||= half-4th ||= m2/2, M6/2, A8/2, m10/2, P12/2 ||
||  ||   ||   ||
||  ||= (P8, P5/2) ||= half-5th ||= A1/2, m3/2, M7/2, m9/2, P11/2 ||
||   ||   ||   ||
||  ||= (P8/2, P4/2) ||= half-everything ||= (every 3-limit interval)/2 ||
||  ||   ||   ||
||~ thirds ||||= all pergens ||= A4/3, m10/3 ||
||  ||   ||   ||
||  ||= (P8/3, P5) ||= third-8ve ||= m3/3, M6/3, A11/3, d12/3 ||
||  ||   ||   ||
||  ||= (P8, P4/3) ||= third-4th ||= A1/3, m7/3, M7/3, M10/3 ||
||  ||   ||   ||
||  ||= (P8, P5/3) ||= third-5th ||= m2/3, m6/3, M9/3, A8/3 ||
||  ||   ||  ||
||  ||= (P8, P11/3) ||= third-11th ||= M2/3, M3/3, m9/3, P12/3 ||
||  ||  ||  ||
||  ||= (P8/3, P4/2) ||= third-8ve half-4th ||=   ||
||  ||  ||  ||
||  ||=   ||=  ||=   ||
||  ||  ||  ||
||  ||=  ||=   ||=   ||
||  ||  ||  ||
||  ||=   ||=  ||=   ||
||  ||  ||  ||
||  ||=   ||=  ||=   ||
||  ||  ||  ||
||  ||=  ||=   ||=   ||
||  ||  ||  ||
||  ||=   ||=  ||=   ||
||  ||  ||  ||
||  ||=   ||=  ||=   ||
||  ||  ||  ||
||  ||=  ||=   ||=   ||
||  ||=   ||=  ||=   ||




Line 2,528: Line 2,529:
&lt;table class="wiki_table"&gt;
&lt;table class="wiki_table"&gt;
     &lt;tr&gt;
     &lt;tr&gt;
         &lt;th&gt;pergen&lt;br /&gt;
         &lt;th&gt;category&lt;br /&gt;
&lt;/th&gt;
&lt;/th&gt;
         &lt;th&gt;&lt;br /&gt;
         &lt;th colspan="2"&gt;&lt;u&gt;pergen&lt;/u&gt;&lt;br /&gt;
&lt;/th&gt;
&lt;/th&gt;
         &lt;th&gt;secondary splits &amp;lt;= P12&lt;br /&gt;
         &lt;th&gt;secondary splits &amp;lt;= P12&lt;br /&gt;
Line 2,536: Line 2,537:
     &lt;/tr&gt;
     &lt;/tr&gt;
     &lt;tr&gt;
     &lt;tr&gt;
         &lt;td&gt;(P8/2, P5)&lt;br /&gt;
         &lt;th&gt;halves&lt;br /&gt;
&lt;/td&gt;
&lt;/th&gt;
         &lt;td&gt;half-8ve&lt;br /&gt;
         &lt;td colspan="2" style="text-align: center;"&gt;all pergens&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;M2/2, m6/2, A4/2, d12/2&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;M3/2, d5/2, A5/2, m7/2, M9/2, A11/2&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
     &lt;tr&gt;
     &lt;tr&gt;
         &lt;td&gt;(P8, P5/2)&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;(P8/2, P5)&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;half-5th&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;half-8ve&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;P11/4,&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;M2/2, A4/2, m6/2, M10/2, d12/2&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,554: Line 2,557:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8, P4/2)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;half-4th&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;m2/2, M6/2, A8/2, m10/2, P12/2&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,562: Line 2,567:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8, P5/2)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;half-5th&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;A1/2, m3/2, M7/2, m9/2, P11/2&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,570: Line 2,577:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8/2, P4/2)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;half-everything&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(every 3-limit interval)/2&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
     &lt;tr&gt;
     &lt;tr&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;th&gt;thirds&lt;br /&gt;
&lt;/td&gt;
&lt;/th&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td colspan="2" style="text-align: center;"&gt;all pergens&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;A4/3, m10/3&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,586: Line 2,595:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8/3, P5)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;third-8ve&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;m3/3, M6/3, A11/3, d12/3&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,594: Line 2,605:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8, P4/3)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;third-4th&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;A1/3, m7/3, M7/3, M10/3&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,602: Line 2,615:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8, P5/3)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;third-5th&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;m2/3, m6/3, M9/3, A8/3&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,610: Line 2,625:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;(P8, P11/3)&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;third-11th&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;M2/3, M3/3, m9/3, P12/3&lt;br /&gt;
&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;(P8/3, P4/2)&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;third-8ve half-4th&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,618: Line 2,645:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,626: Line 2,655:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,634: Line 2,665:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,642: Line 2,675:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,650: Line 2,685:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,658: Line 2,695:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,666: Line 2,705:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,674: Line 2,715:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 2,682: Line 2,725:
         &lt;td&gt;&lt;br /&gt;
         &lt;td&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
        &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
         &lt;td&gt;&lt;br /&gt;
         &lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/td&gt;
     &lt;/tr&gt;
     &lt;/tr&gt;
Line 5,609: Line 5,654:
  &lt;br /&gt;
  &lt;br /&gt;
This PDF is a rank-2 notation guide that shows the full lattice for the first 15 pergens, up through the third-splits block. It includes alternate enharmonics for many pergens.&lt;br /&gt;
This PDF is a rank-2 notation guide that shows the full lattice for the first 15 pergens, up through the third-splits block. It includes alternate enharmonics for many pergens.&lt;br /&gt;
&lt;!-- ws:start:WikiTextUrlRule:7041:http://www.tallkite.com/misc_files/pergens.pdf --&gt;&lt;a class="wiki_link_ext" href="http://www.tallkite.com/misc_files/pergens.pdf" rel="nofollow"&gt;http://www.tallkite.com/misc_files/pergens.pdf&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:7041 --&gt;&lt;br /&gt;
&lt;!-- ws:start:WikiTextUrlRule:7106:http://www.tallkite.com/misc_files/pergens.pdf --&gt;&lt;a class="wiki_link_ext" href="http://www.tallkite.com/misc_files/pergens.pdf" rel="nofollow"&gt;http://www.tallkite.com/misc_files/pergens.pdf&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:7106 --&gt;&lt;br /&gt;
(screenshot)&lt;br /&gt;
(screenshot)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Line 5,619: Line 5,664:
  &lt;br /&gt;
  &lt;br /&gt;
Alt-pergenLister lists out thousands of pergens, and suggests periods, generators and enharmonics for each one. Alternate enharmonics are not listed, but single-pair notation for false-double pergens is. It can also list only those pergens supported by a specific edo. Written in Jesusonic, runs inside Reaper.&lt;br /&gt;
Alt-pergenLister lists out thousands of pergens, and suggests periods, generators and enharmonics for each one. Alternate enharmonics are not listed, but single-pair notation for false-double pergens is. It can also list only those pergens supported by a specific edo. Written in Jesusonic, runs inside Reaper.&lt;br /&gt;
&lt;!-- ws:start:WikiTextUrlRule:7042:http://www.tallkite.com/misc_files/alt-pergenLister.zip --&gt;&lt;a class="wiki_link_ext" href="http://www.tallkite.com/misc_files/alt-pergenLister.zip" rel="nofollow"&gt;http://www.tallkite.com/misc_files/alt-pergenLister.zip&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:7042 --&gt;&lt;br /&gt;
&lt;!-- ws:start:WikiTextUrlRule:7107:http://www.tallkite.com/misc_files/alt-pergenLister.zip --&gt;&lt;a class="wiki_link_ext" href="http://www.tallkite.com/misc_files/alt-pergenLister.zip" rel="nofollow"&gt;http://www.tallkite.com/misc_files/alt-pergenLister.zip&lt;/a&gt;&lt;!-- ws:end:WikiTextUrlRule:7107 --&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Screenshot of the first 38 pergens:&lt;br /&gt;
Screenshot of the first 38 pergens:&lt;br /&gt;
&lt;!-- ws:start:WikiTextLocalImageRule:4240:&amp;lt;img src=&amp;quot;/file/view/alt-pergenLister.png/624838213/704x460/alt-pergenLister.png&amp;quot; alt=&amp;quot;&amp;quot; title=&amp;quot;&amp;quot; style=&amp;quot;height: 460px; width: 704px;&amp;quot; /&amp;gt; --&gt;&lt;img src="/file/view/alt-pergenLister.png/624838213/704x460/alt-pergenLister.png" alt="alt-pergenLister.png" title="alt-pergenLister.png" style="height: 460px; width: 704px;" /&gt;&lt;!-- ws:end:WikiTextLocalImageRule:4240 --&gt;&lt;br /&gt;
&lt;!-- ws:start:WikiTextLocalImageRule:4284:&amp;lt;img src=&amp;quot;/file/view/alt-pergenLister.png/624838213/704x460/alt-pergenLister.png&amp;quot; alt=&amp;quot;&amp;quot; title=&amp;quot;&amp;quot; style=&amp;quot;height: 460px; width: 704px;&amp;quot; /&amp;gt; --&gt;&lt;img src="/file/view/alt-pergenLister.png/624838213/704x460/alt-pergenLister.png" alt="alt-pergenLister.png" title="alt-pergenLister.png" style="height: 460px; width: 704px;" /&gt;&lt;!-- ws:end:WikiTextLocalImageRule:4284 --&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Listing all valid pergens is not a trivial task, like listing all valid edos or all valid MOS scales. Not all combinations of octave fractions and multigen fractions make a valid pergen. The search for rank-2 pergens can be done by looping through all possible square mappings [(x, y), (0, z)], and using the formula (P8/x, (i·z - y, x) / xz). While x is always positive and z is always nonzero, y can take on any value. For any x and z, y can be constrained to produce a reasonable cents value for 3/1. Let T be the tempered twefth 3/1. The mapping says T = y·P + z·G = y·P8/x + z·G. Thus y = x·(T/P8 - z·G/P8). We adopt the convention that G is less than half an octave. We constrain T so that the 5th is between 600¢ and 800¢, which certainly includes anything that sounds like a 5th. Thus T is between 3/2 and 5/3 of an octave. We assume that if the octave is stretched, the ranges of T and G will be stretched along with it. The outer ranges of y can now be computed, using the floor function to round down to the nearest integer, and the ceiling function to round up:&lt;br /&gt;
Listing all valid pergens is not a trivial task, like listing all valid edos or all valid MOS scales. Not all combinations of octave fractions and multigen fractions make a valid pergen. The search for rank-2 pergens can be done by looping through all possible square mappings [(x, y), (0, z)], and using the formula (P8/x, (i·z - y, x) / xz). While x is always positive and z is always nonzero, y can take on any value. For any x and z, y can be constrained to produce a reasonable cents value for 3/1. Let T be the tempered twefth 3/1. The mapping says T = y·P + z·G = y·P8/x + z·G. Thus y = x·(T/P8 - z·G/P8). We adopt the convention that G is less than half an octave. We constrain T so that the 5th is between 600¢ and 800¢, which certainly includes anything that sounds like a 5th. Thus T is between 3/2 and 5/3 of an octave. We assume that if the octave is stretched, the ranges of T and G will be stretched along with it. The outer ranges of y can now be computed, using the floor function to round down to the nearest integer, and the ceiling function to round up:&lt;br /&gt;