純正音程に近い平均律を探してみる
音の高さは、周波数で決まります。
しかし、音楽の世界では、周波数を直接扱うことは少なく、音程によって音を指定します。
このとき、一般的に使われるのは 12平均律 という音程です。
これはオクターブ(周波数比2:1)を12等分した音程です。
一方、この12平均律ではない平均律を用いて作曲を行う例もあります。
くわしくは、以下の人たちのサイトや動画を参照してください。
- 変態音楽理論アカデミー YutopiaParty さんの note
- 中井三十一 さんの note
- LAMPLIGHT さんの YouTube
やりたいこと
結局、どの平均律がどの limit の音程をほどよく近似するのか、ということを調べたいです。
ということで、 Rust を用いて、 Val と Monzo を用いてステップを計算できるようにし、順位をつけてみます。
とはいえ、細分化すればするほど、音程は近似できるので、ここでは5平均律から60平均律までの音程を計算し、近似したい Monzo ごとに、どの平均律が近いかを調べます。
結果
オクターブ内に収まる音程は、 Monzo で表現すると以下のようになります。
なお、今回の検証では、最大で6次元までの音程を扱います。
- 2倍音 :
\lbrack 0 ~ 0 ~ 0 ~ 0 ~ 0 ~ 0 \rangle - 3倍音 :
\lbrack -1 ~ 1 ~ 0 ~ 0 ~ 0 ~ 0 \rangle - 5倍音 :
\lbrack -2 ~ 0 ~ 1 ~ 0 ~ 0 ~ 0 \rangle - 7倍音 :
\lbrack -2 ~ 0 ~ 0 ~ 1 ~ 0 ~ 0 \rangle - 11倍音 :
\lbrack -3 ~ 0 ~ 0 ~ 0 ~ 1 ~ 0 \rangle - 13倍音 :
\lbrack -3 ~ 0 ~ 0 ~ 0 ~ 0 ~ 1 \rangle
なお、 総合的な error はセント差を MSE にいれて計算しています。
error 順に並べ、12平均律よりも近似率が高いものを上位に並べます。
20位以下は、基本平均律のみ表示します。
参考のために、 7つ基本平均律で微分音を攻略せよ!【032】 にある基本平均律と12平均律を太線にし、詳細を追加します。
また、セントの差が 1 未満のものも太字にします。
3倍音~5倍音
53EDO の圧倒的な強さが目立ちます。
2位の 34EDO は、53EDO の 1/9 の精度しかありません。
とはいえ、 31EDO は5倍音の精度が高いので、3倍音を排除するのであれば、使いやすいかもしれません。
-
53EDO(error=0.9936335055690649)
3倍音: 31ステップ 701.9c(error=-0.07c)
5倍音: 17ステップ 384.9c(error=-1.41c) -
34EDO(error=9.55828249760085)
-
56EDO(error=13.636583431677623)
-
31EDO(error=13.726973967144497)
3倍音: 18ステップ 696.8c(error=-5.18c)
5倍音: 10ステップ 387.1c(error=0.78c) -
46EDO(error=15.31601993809007)
-
41EDO(error=17.087747147464142)
-
43EDO(error=18.771247313970775)
-
50EDO(error=20.40765357754811)
-
60EDO(error=21.84250557533616)
-
58EDO(error=24.165181794002564)
-
55EDO(error=27.68532242277072)
-
22EDO(error=35.565497292774495)
3倍音: 13ステップ 709.1c(error=7.14c)
5倍音: 7ステップ 381.8c(error=-4.50c) -
44EDO(error=35.565497292774495)
-
59EDO(error=49.10622272842578)
-
49EDO(error=49.2755462914546)
-
19EDO(error=53.182430541745106)
-
38EDO(error=53.182430541745106)
-
57EDO(error=53.182430541745106)
-
51EDO(error=56.15560824306363)
-
52EDO(error=64.49916999041046)
-
12EDO(error=95.56822827864056)
3倍音: 7ステップ 700.0c(error=-1.96c)
5倍音: 4ステップ 400.0c(error=13.69c)
3倍音~7倍音
ここでも 53EDO は圧倒的です。
7倍音にもなると流石に 12EDO の精度が衰えていきます。
基本平均律が全て出てきました。
-
53EDO(error=8.211780104493357)
3倍音: 31ステップ 701.9c(error=-0.07c)
5倍音: 17ステップ 384.9c(error=-1.41c)
7倍音: 43ステップ 973.6c(error=4.76c) -
31EDO(error=9.54298034372053)
3倍音: 18ステップ 696.8c(error=-5.18c)
5倍音: 10ステップ 387.1c(error=0.78c)
7倍音: 25ステップ 967.7c(error=-1.08c) -
41EDO(error=14.33658402247125)
-
46EDO(error=14.551140523535281)
-
56EDO(error=15.962170641886019)
-
58EDO(error=20.401098029586706)
-
43EDO(error=33.413882031201275)
-
57EDO(error=35.50958923775534)
-
50EDO(error=39.570644052279654)
-
60EDO(error=40.52721205080502)
-
52EDO(error=43.05408461219574)
-
51EDO(error=43.095271734687515)
-
55EDO(error=44.42242328242806)
-
59EDO(error=51.214879770553004)
-
37EDO(error=53.021911188398725)
-
48EDO(error=56.647193575672596)
-
47EDO(error=57.21223790338619)
-
36EDO(error=65.26625769393377)
-
38EDO(error=69.60295104260366)
-
49EDO(error=71.48544902200119)
-
22EDO(error=79.9767377770874)
3倍音: 13ステップ 709.1c(error=7.14c)
5倍音: 7ステップ 381.8c(error=-4.50c)
7倍音: 18ステップ 981.8c(error=12.99c) -
25EDO(error=136.29063020608038)
3倍音: 15ステップ 720.0c(error=18.04c)
5倍音: 8ステップ 384.0c(error=-2.31c)
7倍音: 20ステップ 960.0c(error=-8.83c) -
29EDO(error=162.6360515063197)
3倍音: 17ステップ 703.4c(error=1.49c)
5倍音: 9ステップ 372.4c(error=-13.90c)
7倍音: 23ステップ 951.7c(error=-17.10c) -
24EDO(error=181.85040364717472)
3倍音: 14ステップ 700.0c(error=-1.96c)
5倍音: 8ステップ 400.0c(error=13.69c)
7倍音: 19ステップ 950.0c(error=-18.83c) -
28EDO(error=183.11249875175778)
3倍音: 16ステップ 685.7c(error=-16.24c)
5倍音: 9ステップ 385.7c(error=-0.60c)
7倍音: 23ステップ 985.7c(error=16.89c) -
12EDO(error=387.6535213430081)
3倍音: 7ステップ 700.0c(error=-1.96c)
5倍音: 4ステップ 400.0c(error=13.69c)
7倍音: 10ステップ 1000.0c(error=31.17c)
3倍音~11倍音
ここで、トップを 46EDO/41EDO/56EDO が奪います。
53EDO の11倍音の精度が悪化しています。
とはいえ、 46EDO は満遍なく精度が微妙ではあります。
それでも 12EDO の5倍音よりの3~4倍程度の精度があるので順分に使えるのでは?
-
46EDO(error=13.96161894065652)
3倍音: 27ステップ 704.3c(error=2.39c)
5倍音: 15ステップ 391.3c(error=4.99c)
7倍音: 37ステップ 965.2c(error=-3.61c)
11倍音: 21ステップ 547.8c(error=-3.49c) -
41EDO(error=16.463626533157147)
-
56EDO(error=20.45403602444793)
-
53EDO(error=21.84723097515351)
3倍音: 31ステップ 701.9c(error=-0.07c)
5倍音: 17ステップ 384.9c(error=-1.41c)
7倍音: 43ステップ 973.6c(error=4.76c)
11倍音: 24ステップ 543.4c(error=-7.92c) -
58EDO(error=28.633353019108604)
-
31EDO(error=29.164867104708986)
3倍音: 18ステップ 696.8c(error=-5.18c)
5倍音: 10ステップ 387.1c(error=0.78c)
7倍音: 25ステップ 967.7c(error=-1.08c)
11倍音: 14ステップ 541.9c(error=-9.38c) -
50EDO(error=29.794283693658237)
-
57EDO(error=30.531871577049138)
-
52EDO(error=33.88852678281375)
-
43EDO(error=36.69394264709854)
-
59EDO(error=39.583399109118126)
-
37EDO(error=39.76671243139537)
-
55EDO(error=41.911673293489955)
-
48EDO(error=42.91963820095958)
-
60EDO(error=49.239940233524365)
-
51EDO(error=58.03381624951086)
-
54EDO(error=63.697481298918454)
-
22EDO(error=68.57740916448446)
3倍音: 13ステップ 709.1c(error=7.14c)
5倍音: 7ステップ 381.8c(error=-4.50c)
7倍音: 18ステップ 981.8c(error=12.99c)
11倍音: 10ステップ 545.5c(error=-5.86c) -
44EDO(error=68.57740916448446)
-
47EDO(error=69.86700448681708)
-
24EDO(error=136.82204575458616)
3倍音: 14ステップ 700.0c(error=-1.96c)
5倍音: 8ステップ 400.0c(error=13.69c)
7倍音: 19ステップ 950.0c(error=-18.83c)
11倍音: 11ステップ 550.0c(error=-1.32c) -
28EDO(error=145.81678210685175)
3倍音: 16ステップ 685.7c(error=-16.24c)
5倍音: 9ステップ 385.7c(error=-0.60c)
7倍音: 23ステップ 985.7c(error=16.89c)
11倍音: 13ステップ 557.1c(error=5.82c) -
29EDO(error=166.7793642900151)
3倍音: 17ステップ 703.4c(error=1.49c)
5倍音: 9ステップ 372.4c(error=-13.90c)
7倍音: 23ステップ 951.7c(error=-17.10c)
11倍音: 13ステップ 537.9c(error=-13.39c) -
25EDO(error=238.1495816860916)
3倍音: 15ステップ 720.0c(error=18.04c)
5倍音: 8ステップ 384.0c(error=-2.31c)
7倍音: 20ステップ 960.0c(error=-8.83c)
11倍音: 11ステップ 528.0c(error=-23.32c) -
12EDO(error=883.2258249075463)
3倍音: 7ステップ 700.0c(error=-1.96c)
5倍音: 4ステップ 400.0c(error=13.69c)
7倍音: 10ステップ 1000.0c(error=31.17c)
11倍音: 6ステップ 600.0c(error=48.68c)
3倍音~13倍音
12EDO の精度が著しく悪化しています。
ここまでくると上位陣は50EDO 以上のものが多くなります。
46EDO は以前強く、12EDO よりもずれが慣らされています。
とはいえ、次点の 53EDO も 13 倍音を上手くとれています。
-
46EDO(error=17.77042211635599)
3倍音: 27ステップ 704.3c(error=2.39c)
5倍音: 15ステップ 391.3c(error=4.99c)
7倍音: 37ステップ 965.2c(error=-3.61c)
11倍音: 21ステップ 547.8c(error=-3.49c)
13倍音: 32ステップ 834.8c(error=-5.75c) -
53EDO(error=19.03662842468917)
3倍音: 31ステップ 701.9c(error=-0.07c)
5倍音: 17ステップ 384.9c(error=-1.41c)
7倍音: 43ステップ 973.6c(error=4.76c)
11倍音: 24ステップ 543.4c(error=-7.92c)
13倍音: 37ステップ 837.7c(error=-2.79c) -
56EDO(error=20.99694662897586)
-
50EDO(error=23.891112343485027)
-
57EDO(error=24.923262489891833)
-
41EDO(error=26.792728741193844)
-
43EDO(error=31.557455997235962)
-
37EDO(error=33.288246493429355)
-
58EDO(error=34.91360399200101)
-
60EDO(error=39.447637575377925)
-
59EDO(error=40.45639329753121)
-
52EDO(error=46.15621654291439)
-
31EDO(error=47.908409313530356)
3倍音: 18ステップ 696.8c(error=-5.18c)
5倍音: 10ステップ 387.1c(error=0.78c)
7倍音: 25ステップ 967.7c(error=-1.08c)
11倍音: 14ステップ 541.9c(error=-9.38c)
13倍音: 22ステップ 851.6c(error=11.09c) -
48EDO(error=52.280748872084175)
-
54EDO(error=54.02622234398068)
-
51EDO(error=54.95826778693032)
-
55EDO(error=55.08415283164779)
-
47EDO(error=56.714157718815876)
-
44EDO(error=59.716763901154465)
-
40EDO(error=72.5563244956434)
-
24EDO(error=127.40267491498544)
3倍音: 14ステップ 700.0c(error=-1.96c)
5倍音: 8ステップ 400.0c(error=13.69c)
7倍音: 19ステップ 950.0c(error=-18.83c)
11倍音: 11ステップ 550.0c(error=-1.32c)
13倍音: 17ステップ 850.0c(error=9.47c) -
22EDO(error=154.72927245892438)
3倍音: 13ステップ 709.1c(error=7.14c)
5倍音: 7ステップ 381.8c(error=-4.50c)
7倍音: 18ステップ 981.8c(error=12.99c)
11倍音: 10ステップ 545.5c(error=-5.86c)
13倍音: 15ステップ 818.2c(error=-22.35c) -
29EDO(error=166.9197422767433)
3倍音: 17ステップ 703.4c(error=1.49c)
5倍音: 9ステップ 372.4c(error=-13.90c)
7倍音: 23ステップ 951.7c(error=-17.10c)
11倍音: 13ステップ 537.9c(error=-13.39c)
13倍音: 20ステップ 827.6c(error=-12.94c) -
28EDO(error=171.86636914570656)
3倍音: 16ステップ 685.7c(error=-16.24c)
5倍音: 9ステップ 385.7c(error=-0.60c)
7倍音: 23ステップ 985.7c(error=16.89c)
11倍音: 13ステップ 557.1c(error=5.82c)
13倍音: 20ステップ 857.1c(error=16.62c) -
25EDO(error=300.7097977520499)
3倍音: 15ステップ 720.0c(error=18.04c)
5倍音: 8ステップ 384.0c(error=-2.31c)
7倍音: 20ステップ 960.0c(error=-8.83c)
11倍音: 11ステップ 528.0c(error=-23.32c)
13倍音: 18ステップ 864.0c(error=23.47c) -
12EDO(error=1035.0789336235666)
3倍音: 7ステップ 700.0c(error=-1.96c)
5倍音: 4ステップ 400.0c(error=13.69c)
7倍音: 10ステップ 1000.0c(error=31.17c)
11倍音: 6ステップ 600.0c(error=48.68c)
13倍音: 8ステップ 800.0c(error=-40.53c)
5倍音~7倍音
ここで、3倍音を排除した場合の結果を示します。
53EDO の精度が高いのは変わりませんが、31EDO の精度が高いのが目立ちます。
-
31EDO(error=0.8940882876387135)
5倍音: 10ステップ 387.1c(error=0.78c)
7倍音: 25ステップ 967.7c(error=-1.08c) -
47EDO(error=6.522770306251134)
-
56EDO(error=10.486329584986855)
-
53EDO(error=12.315343962968253)
5倍音: 17ステップ 384.9c(error=-1.41c)
7倍音: 43ステップ 973.6c(error=4.76c) -
37EDO(error=12.733259464154735)
-
52EDO(error=18.045845714603857)
-
46EDO(error=18.963904514814075)
-
41EDO(error=21.387736647399652)
-
57EDO(error=27.213475913453433)
-
59EDO(error=27.724156868908988)
-
58EDO(error=29.48671193652275)
-
43EDO(error=40.959130801336805)
-
25EDO(error=41.62494842503577)
5倍音: 8ステップ 384.0c(error=-2.31c)
7倍音: 20ステップ 960.0c(error=-8.83c) -
50EDO(error=41.62494842503577)
-
40EDO(error=45.7426652360267)
-
51EDO(error=56.93086043842957)
-
60EDO(error=58.87980388437481)
-
55EDO(error=59.515181141848814)
-
49EDO(error=73.2045067805677)
-
54EDO(error=76.49910240449952)
-
22EDO(error=94.50451356409847)
5倍音: 7ステップ 381.8c(error=-4.50c)
7倍音: 18ステップ 981.8c(error=12.99c) -
28EDO(error=142.7883338180244)
5倍音: 9ステップ 385.7c(error=-0.60c)
7倍音: 23ステップ 985.7c(error=16.89c) -
29EDO(error=242.83914215162224)
5倍音: 9ステップ 372.4c(error=-13.90c)
7倍音: 23ステップ 951.7c(error=-17.10c) -
24EDO(error=270.8645912789293)
5倍音: 8ステップ 400.0c(error=13.69c)
7倍音: 19ステップ 950.0c(error=-18.83c) -
12EDO(error=579.5692678226794)
5倍音: 4ステップ 400.0c(error=13.69c)
7倍音: 10ステップ 1000.0c(error=31.17c)
5倍音~11倍音
突如現れる 37EDO。
基本平均律の中では 53EDO がトップに返り咲きますが、 37EDO の1/3程度の精度しかありません。
-
37EDO(error=8.489211696231587)
5倍音: 12ステップ 389.2c(error=2.88c)
7倍音: 30ステップ 973.0c(error=4.15c)
11倍音: 17ステップ 551.4c(error=0.03c) -
52EDO(error=14.161181574625166)
-
46EDO(error=16.706954407216127)
-
56EDO(error=18.30076378070246)
-
59EDO(error=20.045756954210493)
-
41EDO(error=21.873409120004712)
-
57EDO(error=23.341890140612463)
-
50EDO(error=27.90503315595517)
-
53EDO(error=29.128090504356823)
5倍音: 17ステップ 384.9c(error=-1.41c)
7倍音: 43ステップ 973.6c(error=4.76c)
11倍音: 24ステップ 543.4c(error=-7.92c) -
31EDO(error=29.939567987650594)
5倍音: 10ステップ 387.1c(error=0.78c)
7倍音: 25ステップ 967.7c(error=-1.08c)
11倍音: 14ステップ 541.9c(error=-9.38c) -
58EDO(error=37.434513953573266)
-
47EDO(error=40.29228161653733)
-
43EDO(error=42.81746203248798)
-
55EDO(error=51.13659520345775)
-
48EDO(error=55.95217480672429)
-
35EDO(error=56.514858677908414)
-
54EDO(error=56.98519012127676)
-
60EDO(error=64.37924418347734)
-
51EDO(error=72.23705689028002)
-
40EDO(error=73.19371661467021)
-
22EDO(error=74.46281681829086)
5倍音: 7ステップ 381.8c(error=-4.50c)
7倍音: 18ステップ 981.8c(error=12.99c)
11倍音: 10ステップ 545.5c(error=-5.86c) -
28EDO(error=106.50209993606082)
5倍音: 9ステップ 385.7c(error=-0.60c)
7倍音: 23ステップ 985.7c(error=16.89c)
11倍音: 13ステップ 557.1c(error=5.82c) -
24EDO(error=181.15538487822639)
5倍音: 8ステップ 400.0c(error=13.69c)
7倍音: 19ステップ 950.0c(error=-18.83c)
11倍音: 11ステップ 550.0c(error=-1.32c) -
25EDO(error=208.99211099206562)
5倍音: 8ステップ 384.0c(error=-2.31c)
7倍音: 20ステップ 960.0c(error=-8.83c)
11倍音: 11ステップ 528.0c(error=-23.32c) -
29EDO(error=221.62919564811526)
5倍音: 9ステップ 372.4c(error=-13.90c)
7倍音: 23ステップ 951.7c(error=-17.10c)
11倍音: 13ステップ 537.9c(error=-13.39c) -
12EDO(error=1176.36042374884)
5倍音: 4ステップ 400.0c(error=13.69c)
7倍音: 10ステップ 1000.0c(error=31.17c)
11倍音: 6ステップ 600.0c(error=48.68c)
5倍音~13倍音
37EDO が 5倍音~13倍音の中で最も精度が高いです。
しかし、 53EDO の精度がここで上がってくるのは以外。
-
37EDO(error=8.210504457565019)
5倍音: 12ステップ 389.2c(error=2.88c)
7倍音: 30ステップ 973.0c(error=4.15c)
11倍音: 17ステップ 551.4c(error=0.03c)
13倍音: 26ステップ 843.2c(error=2.72c) -
57EDO(error=18.128624140775003)
-
56EDO(error=19.51772009729874)
-
46EDO(error=20.781624510200565)
-
50EDO(error=20.998381602664427)
-
53EDO(error=23.79462243397557)
5倍音: 17ステップ 384.9c(error=-1.41c)
7倍音: 43ステップ 973.6c(error=4.76c)
11倍音: 24ステップ 543.4c(error=-7.92c)
13倍音: 37ステップ 837.7c(error=-2.79c) -
59EDO(error=26.021410228453753)
-
47EDO(error=31.244903874105763)
-
41EDO(error=33.43234123333869)
-
52EDO(error=34.42763007679812)
-
43EDO(error=34.8659738738124)
-
58EDO(error=43.08453743607261)
-
54EDO(error=46.57418922201497)
-
60EDO(error=48.35403987330605)
-
31EDO(error=53.175320527941906)
5倍音: 10ステップ 387.1c(error=0.78c)
7倍音: 25ステップ 967.7c(error=-1.08c)
11倍音: 14ステップ 541.9c(error=-9.38c)
13倍音: 22ステップ 851.6c(error=11.09c) -
40EDO(error=54.9648941967007)
-
44EDO(error=61.915658325676766)
-
48EDO(error=64.39542899418885)
-
51EDO(error=64.84181115186205)
-
55EDO(error=65.2959641486631)
-
28EDO(error=148.89275427732707)
5倍音: 9ステップ 385.7c(error=-0.60c)
7倍音: 23ステップ 985.7c(error=16.89c)
11倍音: 13ステップ 557.1c(error=5.82c)
13倍音: 20ステップ 857.1c(error=16.62c) -
24EDO(error=158.29783654781542)
5倍音: 8ステップ 400.0c(error=13.69c)
7倍音: 19ステップ 950.0c(error=-18.83c)
11倍音: 11ステップ 550.0c(error=-1.32c)
13倍音: 17ステップ 850.0c(error=9.47c) -
22EDO(error=180.68129402288918)
5倍音: 7ステップ 381.8c(error=-4.50c)
7倍音: 18ステップ 981.8c(error=12.99c)
11倍音: 10ステップ 545.5c(error=-5.86c)
13倍音: 15ステップ 818.2c(error=-22.35c) -
29EDO(error=208.09221029200046)
5倍音: 9ステップ 372.4c(error=-13.90c)
7倍音: 23ステップ 951.7c(error=-17.10c)
11倍音: 13ステップ 537.9c(error=-13.39c)
13倍音: 20ステップ 827.6c(error=-12.94c) -
25EDO(error=294.48174874802)
5倍音: 8ステップ 384.0c(error=-2.31c)
7倍音: 20ステップ 960.0c(error=-8.83c)
11倍音: 11ステップ 528.0c(error=-23.32c)
13倍音: 18ステップ 864.0c(error=23.47c) -
12EDO(error=1292.893159933542)
5倍音: 4ステップ 400.0c(error=13.69c)
7倍音: 10ステップ 1000.0c(error=31.17c)
11倍音: 6ステップ 600.0c(error=48.68c)
13倍音: 8ステップ 800.0c(error=-40.53c)
まとめ
基本平均律の中では 53EDO が圧倒的に精度が高いです。
高次元であっても、十分な精度を保つことができます。
そして、意外だったのは 37EDO の精度の高さです。
1次元の2倍音を除くと、 53EDO よりも高い精度を誇ります。
2倍音を除いたわけ
トリターブを基準とした音律について考えていました。
あとはなんとなくです。
とはいえ、3倍音や5倍音の精度が低いというのは 純正音程に近い という観点からのものでしかなく、だからと言って、「使えない音律か」といえば、そうではないはずです。
ずれているなら、それを 音律の色 としてあつかうこともできます。
そこも含め考察できると面白いのかなと思います。
Discussion