「ジェネレーター読み替え操作」の版間の差分

編集の要約なし
編集の要約なし
55行目: 55行目:
そして1行目を差し替えて {{ket|{{val|1 0 -4}} {{val|0 1 4}}}} が得られる。
そして1行目を差し替えて {{ket|{{val|1 0 -4}} {{val|0 1 4}}}} が得られる。


マッピングの書き換えた行(1行目)とサイズが変化するジェネレーター(2番目)が対応しないことを不思議に感じるかもしれない。2次元格子で位置を特定するのにそれぞれのジェネレーターを適切に組み合わせる必要があることを思い出してほしい。この操作でマッピングの1行目が担っていた情報はほかの行に漏れていない。1行目だけで処理されていた音程は書き換え後もほかの行からは手伝いようがない。(本例ではマッピングの最初の列を見れば 2/1 をマッピングする仕事が変化していないのが一目瞭然である。)マッピングが等価であるためには、少なくとも1番目のジェネレーターのサイズを変更できないだろうことがわかる。逆に情報を漏らした2行目は結果として自分の仕事を漏洩先に手伝わせることになるので、自分の力加減(2番目のジェネレーターのサイズ)を調整する必要が出てくる。(本例ではマイナスにして漏らしているのでむしろ漏洩先からの協力が減って2行目ががんばることになる。3/1 をマッピングするときオクターブが1個、完全5度が1個だったものが、「オレ(2番目)1個につきオマエ(1番目)1個分をこっちでやっとくよ」となって2番目のジェネレーターがオクターブと完全5度のセット=完全12度となる。)
マッピングの書き換えた行(1行目)とサイズが変化するジェネレーター(2番目)が対応しないことを不思議に感じるかもしれない。2次元格子で位置を特定するのにそれぞれのジェネレーターを適切に組み合わせる必要があることを思い出してほしい。この操作でマッピングの1行目が担っていた情報はほかの行に漏れていない。1行目だけで処理されていた音程は書き換え後もほかの行からは手伝いようがない。(本例ではマッピングの最初の列を見れば 2/1 をマッピングする仕事が変化していないのが明らかである。)マッピングが同じピッチ集合を生成するためには、少なくとも1番目のジェネレーターのサイズを変更できないだろうことがわかる。逆に情報を漏らした2行目は結果として自分の仕事を漏洩先に手伝わせることになるので、自分の力加減(2番目のジェネレーターのサイズ)を調整する必要が出てくる。(本例ではマイナスにして漏らしているのでむしろ漏洩先からの協力が減って2行目ががんばることになる。3/1 をマッピングするとき両方のジェネレーターが協力してオクターブ1個と完全5度1個を積み上げていたのが、書き換え後は2番目のジェネレーターがオクターブと完全5度のセット=完全12度となる。)


等価なマッピングであることが表現できるように等号で書くと、
等価なマッピングであることが表現できるように等号で書くと、
91行目: 91行目:
\end{array} \right)  
\end{array} \right)  
&= \left( \mathrm{octavesize} \ \mathrm{tritavesize} \right)
&= \left( \mathrm{octavesize} \ \mathrm{tritavesize} \right)
\end{align}</math>
よって
<math>\begin{align}
\mathrm{temperedintervalsize} &= \left( \mathrm{octavesize} \ \mathrm{fifthsize} \right) \left(\begin{array}{c} \mathrm{octave} \\ \mathrm{fifth} \end{array} \right) \\
&= \left( \mathrm{octavesize} \ \mathrm{fifthsize} \right) \left(\begin{array}{ccc}
1 & 1 & 0 \\
0 & 1 & 4
\end{array} \right) \left( \begin{array}{c} p_2 \\ p_3 \\ p_5 \end{array} \right) \\
&= \left( \mathrm{octavesize} \ \mathrm{tritavesize} \right) \left(\begin{array}{ccc}
1 & 0 & -4 \\
0 & 1 & 4
\end{array} \right) \left( \begin{array}{c} p_2 \\ p_3 \\ p_5 \end{array} \right) \\
\end{align}</math>
\end{align}</math>


97行目: 111行目:
=== 操作その2: ジェネレーターの符号反転 ===
=== 操作その2: ジェネレーターの符号反転 ===


よりややこしい例、完全5度で組み立てられたミーントーンから完全4度で組み立てられたミーントーンへの変換を考えよう。再確認すると、完全4度は完全5度の補音程(転回音程)なのでこれは当然可能である。
よりややこしい例、完全5度で組み立てられたミーントーンから完全4度で組み立てられたミーントーンへの変換を考えよう。再確認すると、完全4度は完全5度の相補音程(転回音程)なのでこれは当然可能である。


この補音程化が常にできるというのはオクターブに限った話ではない。ジェネレーターをそれに対するもう一方のジェネレーターの補音程に置き換えて同じピッチ集合を記述できる。
この相補音程化が常にできるというのはオクターブに限った話ではない。ジェネレーターをそれに対するもう一方のジェネレーターの相補音程に置き換えて同じピッチ集合を記述できる。


この補音程に置き換えるというのを手順にまとめると: まずそのジェネレーターの符号を反転し(操作その2)、次にそれにもう一方のジェネレーターを加える(操作その1)。(まずもう一方のジェネレーターを引いて(操作その1の反対バージョン)、引きすぎてジェネレーターの大きさが負になってしまったので符号を反転する(操作その2)のでもよい。)
この相補音程に置き換えるというのを手順にまとめると: まずそのジェネレーターの符号を反転し(操作その2)、次にそれにもう一方のジェネレーターを加える(操作その1)。(まずもう一方のジェネレーターを引いて(操作その1の反対バージョン)、引きすぎてジェネレーターの大きさが負になってしまったので符号を反転する(操作その2)のでもよい。)


なので、最初のステップはミーントーンを特徴づけるジェネレーターの符号を反転し、完全5度''上''ではなく完全5度''下''を表すようにすることである。
なので、最初のステップはミーントーンを特徴づけるジェネレーターの符号を反転し、完全5度''上''ではなく完全5度''下''を表すようにすることである。
133行目: 147行目:
=== ランク2を超えて ===
=== ランク2を超えて ===


以上の2種類の操作でそのテンペラメントを正しく表せる任意のジェネレーター基底を得ることができる。そしてこれはランク2に限らず任意のランクのテンペラメントで機能する(ランク1には操作その2だけが使えて結果は自明だが)。
以上の2種類の操作でそのテンペラメントを正しく表せる任意のジェネレーター基底を得ることができる。そしてこれはランク2に限らず任意のランクのテンペラメントで機能する(ランク1には操作その2だけが使えて結果は自明である)。


例として、7リミットマーベルの標準形は {{ket|{{val|1 0 0 -5}} {{val|0 1 0 2}} {{val|0 0 1 2}}}} であり、ジェネレーターは順にオクターブ、完全12度、完全17度(5/1)となる。ここから2番目のジェネレーターを完全5度にしたい、つまり<math>g_2</math> を <math>g_1</math> だけ減らしたいという場合、操作その1に従って <math>𝒎_1</math> に <math>𝒎_2</math> を足す。これで {{ket|{{val|1 1 0 -3}} {{val|0 1 0 2}} {{val|0 0 1 2}}}} が得られる。都合のいいことに、この操作に関係しなかった3番目のジェネレーターのサイズは影響を受けない。サイズが影響を受けるのは情報を漏らした2行目だけである。
例として、7リミットマーベルの標準形は {{ket|{{val|1 0 0 -5}} {{val|0 1 0 2}} {{val|0 0 1 2}}}} であり、ジェネレーターは順にオクターブ、完全12度、完全17度(5/1)となる。ここから2番目のジェネレーターを完全5度にしたい、つまり<math>g_2</math> を <math>g_1</math> だけ減らしたいという場合、操作その1に従って <math>𝒎_1</math> に <math>𝒎_2</math> を足す。これで {{ket|{{val|1 1 0 -3}} {{val|0 1 0 2}} {{val|0 0 1 2}}}} が得られる。都合のいいことに、この操作に関係しなかった3番目のジェネレーターのサイズは影響を受けない。サイズが影響を受けるのは情報を漏らした2行目だけである。
141行目: 155行目:
== チューニング ==
== チューニング ==


positive generator form、equave-reduced generator form、minimal-generator formなどはジェネレーターのサイズに関する規定があるため、チューニングを定めてから変換を行う必要がある。この時に単純に目についた原像 <math>g_1 = \mathrm{cent}(2/1), g_2 = \mathrm{cent}(3/2)</math> を採用するのは信頼できる方法とは言えない(<math>g_1</math> は 2/1 を表すと同時に 81/40 や 160/81 等々を表してもいる)。採用されるチューニングはツールによっても違っているが、本項目中の例では minimax-ES チューニングを採用する。
positive generator form、equave-reduced generator form、minimal-generator formなどはジェネレーターのサイズに関する規定があるため、チューニングを定めてから変換を行う必要がある。この時に単純に目についた元音程を使い <math>g_1 = \mathrm{cent}(2/1), g_2 = \mathrm{cent}(3/2)</math> を採用するのは信頼できる方法とは言えない。採用されるチューニングはツールによっても違っているが、本項目中の例では minimax-ES チューニングを採用する。


== mingen form を求める例 ==
== mingen form を求める例 ==


(翻訳中)
''(mingen form を求める特定の実装の説明) See [[:en:Generator form manipulation #Easy instructions table to achieve mingen form for rank-2 mapping]]''