「マッピング」の版間の差分
Dummy index (トーク | 投稿記録) 編集の要約なし |
Dummy index (トーク | 投稿記録) 編集の要約なし |
||
| (同じ利用者による、間の3版が非表示) | |||
| 21行目: | 21行目: | ||
<math>\left\{440\cdot 2^a\cdot 3^b\,\middle|\,a,b\in\mathbb Z\right\}</math> | <math>\left\{440\cdot 2^a\cdot 3^b\,\middle|\,a,b\in\mathbb Z\right\}</math> | ||
次に関数の出力側である12edoの音高を表すのに整数を導入する。A440がノート番号 0、そこから上がった B♭ がノート番号 1、下がった A♭ がノート番号 −1、… とするとマッピングは素因数 2 の1個当たり 12 ステップ、素因数 3 の1個当たり 19 ステップ(3/1 は 1901.955… セントだがこれを 1900 セントに丸める)であると表される。数式で書くと <math>12a + 19b</math> となる。よって、A440から 1/1 上がった音(つまりA440)はノート番号 0、A440から(以後省略)2/1 上がった音(以後省略)はノート番号 12、3/2 はノート番号 7、そして 3<sup>12</sup>/2<sup>19</sup>(ピタゴラスコンマ)はノート番号 0 (A440から動かない)となる。''a'' と ''b'' はこのように素因数分解から、または[[モンゾ]]から読み取れる。 | |||
=== 四捨五入との比較 === | === 四捨五入との比較 === | ||
| 27行目: | 27行目: | ||
=== 記法 === | === 記法 === | ||
RTTにおいてこのようなマッピングのための特別な記法がある。上記の3リミット12平均律は {{val| 12 19 }} と書かれる。最初の素数(2)は 12 ステップにマップされ、次の素数(3)は 19 ステップにマップされるという意味である。数学的に言うならこれは | RTTにおいてこのようなマッピングのための特別な記法がある。上記の3リミット12平均律は {{val| 12 19 }} と書かれる。最初の素数(2)は 12 ステップにマップされ、次の素数(3)は 19 ステップにマップされるという意味である。数学的に言うならこれは 「マッピング行列」で、マッピングの情報をとてもコンパクトに表している。これはランク1テンペラメントなのでマッピング行列は 1 行であり、またこれは3リミットテンペラメントなのでマッピング行列は 2 列でそれぞれ素数 2 と素数 3 を表している。ブラ記法で書かれた1行だけのマッピング行列(あるいはマッピング行列の中の行)を[[ヴァル]]と呼ぶ。また複数個のヴァルを並べることで表現したマッピング行列を'''ヴァルのリスト'''という。 | ||
=== 様々な12平均律 === | === 様々な12平均律 === | ||
今度は3リミットではなく5リミットテンペラメントとしての12平均律を考える。このテンペラメントは全ての3リミット純正音程を上記と同じようにマップするが、それだけではなくそれ以外の5リミット純正音程も扱う。そのマッピング行列は {{val| 12 19 28 }} となる。技術的に言うとこれは {{val| 12 19 }} とは''異なる''レギュラーテンペラメントであるが、一般的な用語としてはどちらも「12平均律」と呼ばれる。 | 今度は3リミットではなく5リミットテンペラメントとしての12平均律を考える。このテンペラメントは全ての3リミット純正音程を上記と同じようにマップするが、それだけではなくそれ以外の5リミット純正音程も扱う。そのマッピング行列は {{val| 12 19 28 }} となる。技術的に言うとこれは {{val| 12 19 }} とは''異なる''レギュラーテンペラメントであるが、一般的な用語としてはどちらも「12平均律」と呼ばれる。 | ||
さらに11リミットの12平均律を考える。そのマッピング行列は? それは 11/8 を「だいぶシャープなD」と考えるか「だいぶフラットなD♯」と考えるかによって変わる。マッピングはそれぞれ {{val| 12 19 28 34 41 }} と {{val| 12 19 28 34 42 }} となる。後者のほうがより正確な 11/8 を持つが、前者は 12/11 | さらに11リミットの12平均律を考える。そのマッピング行列は? それは 11/8 を「だいぶシャープなD」と考えるか「だいぶフラットなD♯」と考えるかによって変わる。マッピングはそれぞれ {{val| 12 19 28 34 41 }} と {{val| 12 19 28 34 42 }} となる。後者のほうがより正確な 11/8 を持つが、前者は 12/11 を含むいくつかの音程がより正確になる。RTT流に言えば、オクターブを 12 等分する11リミットテンペラメントは 2 個あるということである。「11リミット12平均律」という言い方ではマッピングを特定できていなく、つまり特定のテンペラメントを指し示せていない。 | ||
厳密に言えば、「5リミット12平均律」や「3リミット12平均律」ですら同様に曖昧である、なぜなら例えば {{val| 12 19 27 }} だって有効なテンペラメントだからである({{val| 12 19 28 }} よりずっと不正確ではあるが)。このテンペラメントでは 5/4 が12edoの 3 ステップ(300 セント)で表される。もちろん実用上は高リミットにならないとこの曖昧性は問題にならない。 | 厳密に言えば、「5リミット12平均律」や「3リミット12平均律」ですら同様に曖昧である、なぜなら例えば {{val| 12 19 27 }} だって有効なテンペラメントだからである({{val| 12 19 28 }} よりずっと不正確ではあるが)。このテンペラメントでは 5/4 が12edoの 3 ステップ(300 セント)で表される。もちろん実用上は高リミットにならないとこの曖昧性は問題にならない。 | ||
| 51行目: | 51行目: | ||
# 平均律はランク1である。それ全体があるジェネレーターの積み重ねとして存在している。 | # 平均律はランク1である。それ全体があるジェネレーターの積み重ねとして存在している。 | ||
# 2個のジェネレーター(慣習的に順にピリオドとジェネレーターともいう)からなるテンペラメントはランク2である。ミーントーンがいい例で、5度の積み重ねとオクターブの積み重ねという独立したジェネレーターチェーンを持ち2次元の格子を構成している。 | # 2個のジェネレーター(慣習的に順にピリオドとジェネレーターともいう)からなるテンペラメントはランク2である。ミーントーンがいい例で、5度の積み重ねとオクターブの積み重ねという独立したジェネレーターチェーンを持ち2次元の格子を構成している。 | ||
# 3個のジェネレーター(ピリオドと2個のジェネレーターともいう)からなるテンペラメントはランク3である。5リミット純正律は(何もテンパーしていないので通常「テンペラメント」とは呼ばないが、ともかく)ランク3でありジェネレーターは 2/1、3/1、5/ | # 3個のジェネレーター(ピリオドと2個のジェネレーターともいう)からなるテンペラメントはランク3である。5リミット純正律は(何もテンパーしていないので通常「テンペラメント」とは呼ばないが、ともかく)ランク3でありジェネレーターは 2/1、3/1、5/1 である(2/1、3/2、5/4 でもよい)。 | ||
# 7リミット純正律はランク4であり、11リミット純正律はランク5であり、13リミット純正律はランク6であり、… | # 7リミット純正律はランク4であり、11リミット純正律はランク5であり、13リミット純正律はランク6であり、… | ||
孤立した1個のヴァルは純正律をランク1のテンペラメントにマップする。ランク2以上のテンペラメントを扱うには、2個以上のヴァルが必要である。つまりきちんとテンペラメントにマップするにはテンペラメントのランク数と同じ数のヴァルが必要である。 | 孤立した1個のヴァルは純正律をランク1のテンペラメントにマップする。ランク2以上のテンペラメントを扱うには、2個以上のヴァルが必要である。つまりきちんとテンペラメントにマップするにはテンペラメントのランク数と同じ数のヴァルが必要である。 | ||
== | == 例 == | ||
5リミットでランク2の例を考える。そのようなテンペラメントのヴァルのリストは以下の形になる: | |||
{{val| a b c }} – | {{val| a b c }} – ピリオド | ||
{{val| d e f }} – | {{val| d e f }} – ジェネレーター | ||
一番上のヴァルは慣習によりピリオドのジェネレーターチェーンを表し、下のヴァルはそうでないものを表す。 | |||
純正律の素数をマッピングするとき、それぞれのジェネレーターをいくつずつ用意すればその素数音程に到達するのかを考える必要がある。例として、ミーントーンテンペラメントを考察する。普通に考えてピリオドを 2/1 とし、ジェネレーターを 3/2 とする。純正律の 2/1 をピリオド 1 個とジェネレーター 0 個の組み合わせにマップする。これをヴァルのリストに書き込むと | |||
{{val| 1 _ _ }} | {{val| 1 _ _ }} | ||
| 71行目: | 71行目: | ||
{{val| 0 _ _ }} | {{val| 0 _ _ }} | ||
3/1 | 3/1 は少し複雑だ――ピリオドのチェーンで 1 ステップに、ジェネレーターのチェーンで 1 ステップを加えると 3/1 に到達する。 | ||
{{val| 1 1 _ }} | {{val| 1 1 _ }} | ||
| 77行目: | 77行目: | ||
{{val| 0 1 _ }} | {{val| 0 1 _ }} | ||
5/1 | 5/1 は簡単だ――我々はミーントーンの5度を 4 個積み重ねると 5/1 になることを知っている。それは 5/2 や 10/1 などではないので、オクターブを足したり引いたりする必要はない。つまりピリオド 0 個とジェネレーター 4 個である。 | ||
{{val| 1 1 0 }} | {{val| 1 1 0 }} | ||
| 83行目: | 83行目: | ||
{{val| 0 1 4 }} | {{val| 0 1 4 }} | ||
これが、ミーントーンテンペラメントのマッピング行列である。 | |||
純正音程からピリオドとジェネレーターそれぞれいくつになるかは、順番に各ヴァルと純正音程のモンゾの内積を求めればよい。または標準的な行列積で書いても内容は同一である。(行列演算に乗せる場合、モンゾは列ベクトルである。)例えば 15/8 は {{monzo|-3 1 1}} と書けるので | |||
<math>\begin{align} | |||
&\left(\begin{array}{ccc} | |||
1 & 1 & 0 \\ | |||
0 & 1 & 4 | |||
\end{array} \right) \left( \begin{array}{c} -3 \\ 1 \\ 1 \end{array} \right) \\ | |||
=& \left(\begin{array}{cc} | |||
1 * (-3) + 1 * 1 + 0 * 1 \\ | |||
0 * (-3) + 1 * 1 + 4 * 1 | |||
\end{array} \right) \\ | |||
=& \left(\begin{array}{cc} | |||
-2 \\ | |||
5 | |||
\end{array} \right) \\ | |||
\end{align}</math> | |||
となり、ジェネレーター 5 個で 2 オクターブ上の長3度に完全5度が乗って長7度、そこからピリオドがマイナス 2 個されるので単音程の長7度となる。得られる列ベクトルはテンパードモンゾと呼ばれる。(翻って考えると、マッピング行列は素数音程に対応するテンパードモンゾを並べたものともいえる。) | |||
== 基底変換 == | |||
上記の例では、ミーントーンのマッピングを 2/1 と 3/2 の組み合わせとして書き出した。代わりにジェネレーターを 2/1 と 4/3 としたらどうなるか? それとも、2/1 と 3/1 としたらどうなるか? その結果はそれぞれ異なるヴァルのリストになるが、それでも同じテンペラメントを表すことになる。 | |||
数学の言葉では、テンペラメントの'''基底を変換'''しただけであり、テンパーされた音程の空間として互いに'''同型'''である。これはこれらが同じテンペラメントであることを示す凝った方法である。 | |||
(中略) | |||
マッピング行列の様々な書き方の中で、正規形に関する議論は{{en仮リンク|normal val list|normal lists #Normal val list}}を参照のこと。正規形は本ウィキのテンペラメントの一覧に使われる。 | |||
こういった作業については、[[ジェネレーター読み替え操作]]を参照のこと。 | |||
== 単位 == | |||
マッピングの中の個々の要素の単位を <math>\small 𝗴/𝗽</math>(generators per prime)と考えるとよいかもしれない。マッピングの各行はそれぞれのジェネレーターに対応し、各列は純正律のそれぞれ異なる素数に対応する。なので行と列が交差する要素はその素数1個を近似するときにその材料の一部として着目しているジェネレーターをいくつ用意するのかを表している。(線形写像というのはざっくり言えば係数のかたまりを掛けることであり、係数のかたまり=行列、掛けること=行列積として整理したのが線形代数である。なので関数の入力の単位がリットルで出力の単位がkmである場合、関数の本体である係数の単位は入力の単位を分母にしてkm/リットルとなるのである。primeが分母にあるのは単にそういう意味である。) For more information, see {{en仮リンク|Dave Keenan & Douglas Blumeyer's guide to RTT/Units analysis}}. | |||