Using Scala to transform just intonation: Difference between revisions

Wikispaces>genewardsmith
**Imported revision 251270206 - Original comment: **
Wikispaces>genewardsmith
**Imported revision 251327470 - 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:genewardsmith|genewardsmith]] and made on <tt>2011-09-06 14:43:52 UTC</tt>.<br>
: This revision was by author [[User:genewardsmith|genewardsmith]] and made on <tt>2011-09-06 17:28:37 UTC</tt>.<br>
: The original revision id was <tt>251270206</tt>.<br>
: The original revision id was <tt>251327470</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 45: Line 45:
Just as the 5-limit transformations are left invariant by &lt;3 5 7|, these native 7-limit transformations are left invariant by &lt;4 6 9 11|. However, we can increase the number of 7-limit transformations by no longer requiring that &lt;4 6 9 11| be left invariant, and extending the 5-limit transformations to the 7-limit. If we extend "3 16/5 5 24/5" to the 7-limit as "3 16/5 5 24/5 7 28/5", then applying it twice leads to "3 10/3 5 16/3 7 14/3" and three times to "7 7/2"; the transformation is of finite order modulo octave equivalence, but not absolutely. We can cure this by using it together with its inverse transformation, "3 10/3 5 16/3 7 28/3". If we do this, we get a cycle of order two from major-minor, of order three from transformations lifted from the 5-limit, and of order four from "3 14/5 5 24/5 7 32/5", for a group of order 24, the [[http://mathworld.wolfram.com/TetrahedralGroup.html|group of the tetrahedron]]. If we add to our transformations the inversion, "2 1/2 3 1/3 5 1/5 7 1/7", we end up with a group of order 48, the [[http://mathworld.wolfram.com/OctahedralGroup.html|group of the octahedron]], the full set of symmetries of a hexany. This is illustrated by the piece [[http://robertinventor.tripod.com/tunes/tunes.htm#hexany_phrase_transformations|hexany phrase]].
Just as the 5-limit transformations are left invariant by &lt;3 5 7|, these native 7-limit transformations are left invariant by &lt;4 6 9 11|. However, we can increase the number of 7-limit transformations by no longer requiring that &lt;4 6 9 11| be left invariant, and extending the 5-limit transformations to the 7-limit. If we extend "3 16/5 5 24/5" to the 7-limit as "3 16/5 5 24/5 7 28/5", then applying it twice leads to "3 10/3 5 16/3 7 14/3" and three times to "7 7/2"; the transformation is of finite order modulo octave equivalence, but not absolutely. We can cure this by using it together with its inverse transformation, "3 10/3 5 16/3 7 28/3". If we do this, we get a cycle of order two from major-minor, of order three from transformations lifted from the 5-limit, and of order four from "3 14/5 5 24/5 7 32/5", for a group of order 24, the [[http://mathworld.wolfram.com/TetrahedralGroup.html|group of the tetrahedron]]. If we add to our transformations the inversion, "2 1/2 3 1/3 5 1/5 7 1/7", we end up with a group of order 48, the [[http://mathworld.wolfram.com/OctahedralGroup.html|group of the octahedron]], the full set of symmetries of a hexany. This is illustrated by the piece [[http://robertinventor.tripod.com/tunes/tunes.htm#hexany_phrase_transformations|hexany phrase]].


The transformations listed above do not exhaust the interesting 7-limit transformations. If we put "5 36/7 7 36/5" into the Factor pairs box, we interchange major with supermajor tetrads, and minor with subminor tetrads. Doing it twice restores the orginal scale; this is another involution. Doing major-minor first, followed by major-supermajor, leads to "5 14/3 7 20/3", which sends major tetrads to subminor tetrads and minor tetrads to supermajor tetrads. It isn't an involution, but it is invertible, with inverse transformation "5 21/4 7 15/2" which is what you get by doing major-supermajor first, then major-minor. </pre></div>
The transformations listed above do not exhaust the interesting 7-limit transformations. If we put "5 36/7 7 36/5" into the Factor pairs box, we interchange major with supermajor tetrads, and minor with subminor tetrads. Doing it twice restores the orginal scale; this is another involution. Doing major-minor first, followed by major-supermajor, leads to "5 14/3 7 20/3", which sends major tetrads to subminor tetrads and minor tetrads to supermajor tetrads. It isn't an involution, but it is invertible, with inverse transformation "5 21/4 7 15/2" which is what you get by doing major-supermajor first, then major-minor.
 
=Other transformations=
Many other interesting transformations can be performed using Scala. For one example, "5 56/11 7 80/11 11 128/11" is another involution, this time of the 11-limit. "5 44/9 7 22/3" on the other hand projects the 11-limit down to its 2.3.11 subgroup, and "5 24/5 7 36/5 11 52/5 13 64/5" projects the 13-limit down to the 2.3.5.13 subgroup.</pre></div>
<h4>Original HTML content:</h4>
<h4>Original HTML content:</h4>
<div style="width:100%; max-height:400pt; overflow:auto; background-color:#f8f9fa; border: 1px solid #eaecf0; padding:0em"><pre style="margin:0px;border:none;background:none;word-wrap:break-word;width:200%;white-space: pre-wrap ! important" class="old-revision-html">&lt;html&gt;&lt;head&gt;&lt;title&gt;Using Scala to transform just intonation&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;!-- ws:start:WikiTextTocRule:6:&amp;lt;img id=&amp;quot;wikitext@@toc@@flat&amp;quot; class=&amp;quot;WikiMedia WikiMediaTocFlat&amp;quot; title=&amp;quot;Table of Contents&amp;quot; src=&amp;quot;/site/embedthumbnail/toc/flat?w=100&amp;amp;h=16&amp;quot;/&amp;gt; --&gt;&lt;!-- ws:end:WikiTextTocRule:6 --&gt;&lt;!-- ws:start:WikiTextTocRule:7: --&gt;&lt;a href="#Scala seq files"&gt;Scala seq files&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:7 --&gt;&lt;!-- ws:start:WikiTextTocRule:8: --&gt; | &lt;a href="#x5-limit transformations"&gt;5-limit transformations&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:8 --&gt;&lt;!-- ws:start:WikiTextTocRule:9: --&gt; | &lt;a href="#x7-limit transformations"&gt;7-limit transformations&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:9 --&gt;&lt;!-- ws:start:WikiTextTocRule:10: --&gt;
<div style="width:100%; max-height:400pt; overflow:auto; background-color:#f8f9fa; border: 1px solid #eaecf0; padding:0em"><pre style="margin:0px;border:none;background:none;word-wrap:break-word;width:200%;white-space: pre-wrap ! important" class="old-revision-html">&lt;html&gt;&lt;head&gt;&lt;title&gt;Using Scala to transform just intonation&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;!-- ws:start:WikiTextTocRule:8:&amp;lt;img id=&amp;quot;wikitext@@toc@@flat&amp;quot; class=&amp;quot;WikiMedia WikiMediaTocFlat&amp;quot; title=&amp;quot;Table of Contents&amp;quot; src=&amp;quot;/site/embedthumbnail/toc/flat?w=100&amp;amp;h=16&amp;quot;/&amp;gt; --&gt;&lt;!-- ws:end:WikiTextTocRule:8 --&gt;&lt;!-- ws:start:WikiTextTocRule:9: --&gt;&lt;a href="#Scala seq files"&gt;Scala seq files&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:9 --&gt;&lt;!-- ws:start:WikiTextTocRule:10: --&gt; | &lt;a href="#x5-limit transformations"&gt;5-limit transformations&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:10 --&gt;&lt;!-- ws:start:WikiTextTocRule:11: --&gt; | &lt;a href="#x7-limit transformations"&gt;7-limit transformations&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:11 --&gt;&lt;!-- ws:start:WikiTextTocRule:12: --&gt; | &lt;a href="#Other transformations"&gt;Other transformations&lt;/a&gt;&lt;!-- ws:end:WikiTextTocRule:12 --&gt;&lt;!-- ws:start:WikiTextTocRule:13: --&gt;
&lt;!-- ws:end:WikiTextTocRule:10 --&gt;&lt;br /&gt;
&lt;!-- ws:end:WikiTextTocRule:13 --&gt;&lt;br /&gt;
&lt;!-- ws:start:WikiTextHeadingRule:0:&amp;lt;h1&amp;gt; --&gt;&lt;h1 id="toc0"&gt;&lt;a name="Scala seq files"&gt;&lt;/a&gt;&lt;!-- ws:end:WikiTextHeadingRule:0 --&gt;Scala seq files&lt;/h1&gt;
&lt;!-- ws:start:WikiTextHeadingRule:0:&amp;lt;h1&amp;gt; --&gt;&lt;h1 id="toc0"&gt;&lt;a name="Scala seq files"&gt;&lt;/a&gt;&lt;!-- ws:end:WikiTextHeadingRule:0 --&gt;Scala seq files&lt;/h1&gt;
Suppose we have a piece in &lt;a class="wiki_link" href="/Just%20intonation"&gt;Just intonation&lt;/a&gt; which we want to put into the &lt;a class="wiki_link_ext" href="http://www.huygens-fokker.org/scala/seq_format.html" rel="nofollow"&gt;Scala seq file&lt;/a&gt; format, which is Scala's musical score format. We can enclose the pitch values in parenthesis, so that they have the form (5/4) for a major third or (7/6) for a subminor third. Another form is monzo format, where (|-2 0 1&amp;gt;) can be used in place of (5/4), and (|-1 -1 0 1&amp;gt;) in place of (7/6). An alternative is to use Scala degree numbers. This involves using lines like &amp;quot;4564 note 61 47&amp;quot; in the seq file, where the number right after &amp;quot;note&amp;quot; is the degree or note number. Scala needs additional information in the form of a scale or a declaration of what equal division is being used to interpret the note number, but one of the advantages is that by changing the scale, you can change the music Scala outputs in the form of a midi file.&lt;br /&gt;
Suppose we have a piece in &lt;a class="wiki_link" href="/Just%20intonation"&gt;Just intonation&lt;/a&gt; which we want to put into the &lt;a class="wiki_link_ext" href="http://www.huygens-fokker.org/scala/seq_format.html" rel="nofollow"&gt;Scala seq file&lt;/a&gt; format, which is Scala's musical score format. We can enclose the pitch values in parenthesis, so that they have the form (5/4) for a major third or (7/6) for a subminor third. Another form is monzo format, where (|-2 0 1&amp;gt;) can be used in place of (5/4), and (|-1 -1 0 1&amp;gt;) in place of (7/6). An alternative is to use Scala degree numbers. This involves using lines like &amp;quot;4564 note 61 47&amp;quot; in the seq file, where the number right after &amp;quot;note&amp;quot; is the degree or note number. Scala needs additional information in the form of a scale or a declaration of what equal division is being used to interpret the note number, but one of the advantages is that by changing the scale, you can change the music Scala outputs in the form of a midi file.&lt;br /&gt;
Line 86: Line 89:
Just as the 5-limit transformations are left invariant by &amp;lt;3 5 7|, these native 7-limit transformations are left invariant by &amp;lt;4 6 9 11|. However, we can increase the number of 7-limit transformations by no longer requiring that &amp;lt;4 6 9 11| be left invariant, and extending the 5-limit transformations to the 7-limit. If we extend &amp;quot;3 16/5 5 24/5&amp;quot; to the 7-limit as &amp;quot;3 16/5 5 24/5 7 28/5&amp;quot;, then applying it twice leads to &amp;quot;3 10/3 5 16/3 7 14/3&amp;quot; and three times to &amp;quot;7 7/2&amp;quot;; the transformation is of finite order modulo octave equivalence, but not absolutely. We can cure this by using it together with its inverse transformation, &amp;quot;3 10/3 5 16/3 7 28/3&amp;quot;. If we do this, we get a cycle of order two from major-minor, of order three from transformations lifted from the 5-limit, and of order four from &amp;quot;3 14/5 5 24/5 7 32/5&amp;quot;, for a group of order 24, the &lt;a class="wiki_link_ext" href="http://mathworld.wolfram.com/TetrahedralGroup.html" rel="nofollow"&gt;group of the tetrahedron&lt;/a&gt;. If we add to our transformations the inversion, &amp;quot;2 1/2 3 1/3 5 1/5 7 1/7&amp;quot;, we end up with a group of order 48, the &lt;a class="wiki_link_ext" href="http://mathworld.wolfram.com/OctahedralGroup.html" rel="nofollow"&gt;group of the octahedron&lt;/a&gt;, the full set of symmetries of a hexany. This is illustrated by the piece &lt;a class="wiki_link_ext" href="http://robertinventor.tripod.com/tunes/tunes.htm#hexany_phrase_transformations" rel="nofollow"&gt;hexany phrase&lt;/a&gt;.&lt;br /&gt;
Just as the 5-limit transformations are left invariant by &amp;lt;3 5 7|, these native 7-limit transformations are left invariant by &amp;lt;4 6 9 11|. However, we can increase the number of 7-limit transformations by no longer requiring that &amp;lt;4 6 9 11| be left invariant, and extending the 5-limit transformations to the 7-limit. If we extend &amp;quot;3 16/5 5 24/5&amp;quot; to the 7-limit as &amp;quot;3 16/5 5 24/5 7 28/5&amp;quot;, then applying it twice leads to &amp;quot;3 10/3 5 16/3 7 14/3&amp;quot; and three times to &amp;quot;7 7/2&amp;quot;; the transformation is of finite order modulo octave equivalence, but not absolutely. We can cure this by using it together with its inverse transformation, &amp;quot;3 10/3 5 16/3 7 28/3&amp;quot;. If we do this, we get a cycle of order two from major-minor, of order three from transformations lifted from the 5-limit, and of order four from &amp;quot;3 14/5 5 24/5 7 32/5&amp;quot;, for a group of order 24, the &lt;a class="wiki_link_ext" href="http://mathworld.wolfram.com/TetrahedralGroup.html" rel="nofollow"&gt;group of the tetrahedron&lt;/a&gt;. If we add to our transformations the inversion, &amp;quot;2 1/2 3 1/3 5 1/5 7 1/7&amp;quot;, we end up with a group of order 48, the &lt;a class="wiki_link_ext" href="http://mathworld.wolfram.com/OctahedralGroup.html" rel="nofollow"&gt;group of the octahedron&lt;/a&gt;, the full set of symmetries of a hexany. This is illustrated by the piece &lt;a class="wiki_link_ext" href="http://robertinventor.tripod.com/tunes/tunes.htm#hexany_phrase_transformations" rel="nofollow"&gt;hexany phrase&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The transformations listed above do not exhaust the interesting 7-limit transformations. If we put &amp;quot;5 36/7 7 36/5&amp;quot; into the Factor pairs box, we interchange major with supermajor tetrads, and minor with subminor tetrads. Doing it twice restores the orginal scale; this is another involution. Doing major-minor first, followed by major-supermajor, leads to &amp;quot;5 14/3 7 20/3&amp;quot;, which sends major tetrads to subminor tetrads and minor tetrads to supermajor tetrads. It isn't an involution, but it is invertible, with inverse transformation &amp;quot;5 21/4 7 15/2&amp;quot; which is what you get by doing major-supermajor first, then major-minor.&lt;/body&gt;&lt;/html&gt;</pre></div>
The transformations listed above do not exhaust the interesting 7-limit transformations. If we put &amp;quot;5 36/7 7 36/5&amp;quot; into the Factor pairs box, we interchange major with supermajor tetrads, and minor with subminor tetrads. Doing it twice restores the orginal scale; this is another involution. Doing major-minor first, followed by major-supermajor, leads to &amp;quot;5 14/3 7 20/3&amp;quot;, which sends major tetrads to subminor tetrads and minor tetrads to supermajor tetrads. It isn't an involution, but it is invertible, with inverse transformation &amp;quot;5 21/4 7 15/2&amp;quot; which is what you get by doing major-supermajor first, then major-minor. &lt;br /&gt;
&lt;br /&gt;
&lt;!-- ws:start:WikiTextHeadingRule:6:&amp;lt;h1&amp;gt; --&gt;&lt;h1 id="toc3"&gt;&lt;a name="Other transformations"&gt;&lt;/a&gt;&lt;!-- ws:end:WikiTextHeadingRule:6 --&gt;Other transformations&lt;/h1&gt;
Many other interesting transformations can be performed using Scala. For one example, &amp;quot;5 56/11 7 80/11 11 128/11&amp;quot; is another involution, this time of the 11-limit. &amp;quot;5 44/9 7 22/3&amp;quot; on the other hand projects the 11-limit down to its 2.3.11 subgroup, and &amp;quot;5 24/5 7 36/5 11 52/5 13 64/5&amp;quot; projects the 13-limit down to the 2.3.5.13 subgroup.&lt;/body&gt;&lt;/html&gt;</pre></div>