マイナースケール上の和音

[b]このワークシートは[url=https://www.geogebra.org/m/twxxx3yq]Math by Code[/url]の一部です。[br][br]アプレット、背景、実装の順に見ていきましょう。[br][/b]
1.背景
[size=150][size=100][color=#0000ff]長調は明るくていいですが、アルファベット的にはAをスタートにするスケールの方が[br]わかりやすいかもしれません。[br][br]そんな期待?をもちながら、マイナースケールとコードを探っていきましょう。[br]メジャースケールのときと同じように、[br]音程の特徴に目をつけることで、スケール(音の階段)とコード(和音)をつなげてみよう。[br][/color][/size][b][br]<白鍵だけで長調と短調ができる>[/b][/size][br]音と音の間隔の基本は全音と半音でした。[br][br]主音(スタート)を1として「ラ」(A)から[br][u]白鍵だけを1,2,3,4,5,6,7と数えます。[/u][br][b]ラシドレミファソラ(イロハニホヘト=ABCDEFG)[br][/b]イロハもABCも1番目からになっているのでわかりやすいね。[br][br]この音のスケールを[b]マイナー[/b](短調)といいました。[br]だから、このラシドレミファソラの音階をイ短調(Aマイナー)スケールと言えますね。[br]黒鍵のありなしで21221222で、全半全全半全全全になっています。[br][br]Aを1にするとマイナーですが、教会モードをここからはじめてみよう。[br]A=1はエオリアン(マイナー)[b][color=#0000ff]全半全[/color]全 [/b]半全全[br]B=1はロクリアン      [b][color=#9900ff]半全全半 [/color][/b]全全全[br]C=1はイオニアン(メジャー)[b][color=#0000ff]全全半[/color]全 [/b]全全半[br]D=1はドリアン       [b][color=#0000ff]全半全[/color]全 [/b]全半全[br]E =1はフリジアン      [b][color=#0000ff]半全全[/color]全 [/b]半全全[br]F =1はリディアン      [b][color=#ff0000]全全全[/color]半 [/b]全全半[br]G=1はミクソ・リディアン  [b][color=#0000ff]全全半[/color]全 [/b]全半全[br][br][b]完全5度(全3半1)[/b]が大半なこと、[br][b]完全4度(全2半1)[/b]が大半なこと[br]この2つは変わりませんね。
[b][size=150]<ナチュラルマイナースケール上の3和音>[br]問題は、和音のカラーを決める3度です。[br][/size][/b]2、4を飛ばして、白鍵の1番と3番と5番を同時に押してみます。[br]A=1はエオリアン(マイナー)[color=#0000ff][b]全半[/b]全[/color]全半全全[br]B=1はロクリアン      [b]半全[/b]全半全全全[br]C=1はイオニアン(メジャー)[color=#38761d][b]全全[/b][/color]半全全全半 [br]D=1はドリアン       [color=#0000ff][b]全半[/b][/color]全全全半全[br]E =1はフリジアン      [color=#0000ff][b]半全[/b][/color]全全半全全[br]F =1はリディアン      [b][color=#38761d]全全[/color][/b]全半全全半[br]G=1はミクソ・リディアン  [color=#38761d][b]全全[/b][/color]半全全半全[br][b][color=#38761d]全全[/color][/b]というのは[b]長3度(メジャー[/b]3)、[b][color=#0000ff]全半か半全[/color][/b]が[b]短3度(マイナー[/b]3)です。[br]A=1の1,3,5はA-3、つまり、Am[br]B=1の1,3,5はB-3・-5、つまり、Bm-5[br]C=1の1,3,5はC3、つまり、C[br]D=1の1,3,5はD-3、つまり、Dm[br]E=1の1,3,5はE-3、つまり、Em[br]F=1の1,3,5はF3、つまり、F[br]G=1の1,3,5はG3、つまり、G[br][br]ここで、絶対的にスケールの1(A)に合わせた、度数で再表示してみましょう。[br]そして、7を超えた分は7をひき、小さい度数(番号)順に表示します。(つまり、疑似mod7)[br][u][u]1,3[/u],5はAm[br][color=#9900ff]2,4[/color],6はBm-5[br]3,5[/u],7はC[br][color=#9900ff]1,[/color][u][color=#9900ff]4[/color],6[/u]はDm[br]2,[b][color=#0000ff]5,7[/color][/b]はEm[br]1,3[u],6[/u]はF[br]2,[color=#0000ff][b]5,7[/b][/color]はG[br]ダイアトニックスケールコードは7つありますが、1つおきに見ると、[br]白鍵の番号が2つずれるだけなので、2音ずつ共通音があります。[br]Amから見るとCとFは2音共通なので類似度が高いですね。[br]Dmから見るとBm-5は近いです。[br]Emから見るとGは近いです。
[b][size=150]<ナチュラルマイナースケール上の4和音>[br][/size][/b]2,4,6を飛ばして、白鍵の1番と3番と5番と7番を同時に押してみます。[br][br]A=1はエオリアン(メジャー)[color=#0000ff][b]全半全全半全[/b][/color]全[br]B=1はロクリアン      [color=#0000ff][b]半全全半全全[/b][/color]全[br]C=1はイオニアン(メジャー)[b][color=#38761d][u]全全半全全全[/u][/color][/b]半 [br]D=1はドリアン       [b][color=#0000ff]全半全全全半[/color][/b]全[br]E =1はフリジアン      [color=#0000ff][b]半全全全半全[/b][/color]全[br]F =1はリディアン      [b][color=#38761d][u]全全全半全全[/u][/color][/b]半[br]G=1はミクソ・リディアン  [color=#0000ff][b]全全半全全半[/b][/color]全[br][br]1番から7番までの音程は全5[b]半1[/b]か全4[b]半2[/b]のどちらかです。[br][color=#38761d][b]半1[/b][/color]というのは[b]長7度(メジャー7[/b])、[b][color=#0000ff]半2[/color][/b]が[b]短7度(マイナー7[/b])ですが、[br][b][color=#0000ff]マイナー7が普通なのでマイナーをつけずにただの7度[/color][/b]といいます。[br]1つとばしで、白鍵の奇数番号、1,3,5を同時に引いたのが3和音です。[br]A=1の1,3,5、7はA-3・-7、Am7[br]B=1の1,3,5、7はB-3・-5・-7、つまり、Bm7-5[br]C=1の1,3,5、7はC3・7、つまり、Cmaj7[br]D=1の1,3,5、7はDー3・ー7、つまり、Dm7[br]E=1の1,3,5、7はEー3・ー7、つまり、Em7[br]F=1の1,3,5、7はF3・7、つまり、Fmaj7[br]G=1の1,3,5、7はG3・ー7、つまり、G7[br][br]ここで、絶対的にスケールの1(A)に合わせた、度数で再表示してみましょう。[br]そして、7を超えた分は7をひき、小さい度数(番号)順に表示します。(つまり、疑似mod7)[br][u]1,3,5、7[/u]はAm7[br]1,2,4,6はBm7-5[br]2,[u]3,5、7[/u]はCmaj7[br]1、3,4,6はDm7[br]2、4,5,7はEm7[br]1,3、5,6はFmaj7[br]2,4、6,7はG7[br][br]ダイアトニックスケールコードは7つありますが、1つおきに見ると、[br]白鍵の番号が2つずれるだけなので、3音ずつ共通音があります。[br]コード名を音の集合ととらえると、積集合の要素が3個ということです。[br](例)Am7 ∩ C={1,3,5}[br]1度のトニックAm={1,3,5,7}からみてCmaj7(3maj7)が近いです。[br]5度のドミナントEm7={2,4,5,7}は、Am7と共通点が{5,7}で、Am7の5度上なのに不安定さが少ないそのため、[b][u]ドミナントの役割としてはE7を使う[/u][/b]ことが多い。[br]4度のサブドミナントDm7={1,3,4,6}とは、Bm7-5(2m7-5)が{1,4,6}共通,[br]Fmaj7(6maj7)は{1,3,6}共通、G7(7番7)は[b][u]{6}だけ共通ですが、この音は[br]トニックにもドミナントにもないので、サブドミナントの代理[/u][/b]になれます。[br]す。[br]トニック1m7の代理は3m7[br]ドミナント5m7の代理はスケールコードにはない。5番7にして代理。[br]サブドミナント4m7の代理は6番音をもつ、2m7-5、6maj7、7番7。[br]これが標準的な考え方になるようです。[br]
2、実装
[color=#9900ff][u][b][size=150]質問:12個の主音に対するナチュラルマイナースケール上の7つのコードを表示するアプレットを作るにはどうしたらよいでしょう。[br][/size][/b][/u][/color][br][b]クロマチック音名[/b]を文字列にします。[br]NameS={"B","C","C#","D","D#","E","F","F#","G","G#","A","A#"} //音名の#系です。[br]C4={"m7","m7-5","maj7","m7","m7","maj7","7"} //4和音の順番がメジャーより6スライドします。[br]C3={"m","m-5","","m","m","",""} //3和音の順番がメジャーより6スライドします。[br]名前リストを2オクターブ分とります。[br]NS2=join(NameS,NameS)[br]インデックスはgeogebraなら1から24番になります。[br]これは、白鍵の番号ではなく、クロマチックな音階なので、区別しよう。[br]たとえば、Bを主音にしたときにナチュラルマイナースケールのインデックスは[br][color=#0000ff][b]全半全全半全[/b][/color]全から、[u][b]M={1,3,4、6、8,9,11}[/b]です。これがメジャーとのちがいです。[br][/u]k=NameS2(n)を主音にするスケールのドレミファソラシド名は[br]doremi=sequence(NS2(k-1+M(i)), i, 1,7)[br]doremi+C3で3和音、[br]doremi+C4で4和音の和音名になります。[br]キーを選ぶスライダーをn(1以上12以下)とすると、[br]選んだキーはNameS(n)のテキストになります。[br][br][color=#9900ff][u][b][size=150]質問:スケールの音程とコードの音程が視覚化できるアプレットはどうやって作りますか?[br][/size][/b][/u][/color][br]12種類の音名があるので、12角形の点にします。[br][b]たとえば、e^(i 2π/k) k=1...12として、12個の複素数z1からz12を設定[/b]しましょう。[br]12音名のリストNameS={"B", "C",......., "A#"}にたいして、[br]NameS(1), NameS(2),....,NameS(12)を1つ1つのテキストオブジェクトとして、[br][b]txt1, txt2,.....txt12[/b]と名前をつけなおします。[br]そうして、それぞれのテキストオブジェクト[b]txt kの「設定」の「位置」のリストから対応するzk[/b][br]を選ぶべば、12個の頂点に、音名を表示できるようになるでしょう。[br][br]1つ1つの複素数の他に、複素数のリスト[b]pt=sequence(e^(i 2π/k), k, 1, 12)を設定[/b]しておけば、[br]pt(x)のxを適当に選ぶことで、スケールに関係のある点を強調できます。[br](そして、選ばれた番号の頂点kに対して、mod(k-1,12)+1をすることで、12のときに12にする[br]変則mod12を作ることで、kの変化に対して、1,2、…、12、1,2、…。12と返します。)[br][br]選ばれたスケールの番号[b]M=[u][color=#0000ff]{1,3,4、6、8,9,11}です。これがメジャーとの違いです。[/color][br][/u][/b][br]キーをn=2としたばあい、[b]M+n-1[/b]={2, 4, 5, 7, 9,10,12}と、リストをシフトして、[b]MN[/b]という名前をつけます。そして、[b]Sequence(Mod(MN(k)-1, 12)+1,k,1,7)[/b]として複素数の番号を12個に納めます。[br]ここで、zip(pt(k),k,MN2)とするとMN2番目の頂点、つまりキーが2の[b]スケール音名を強調[/b]できますね。[br][br]最後に和音がサイクリックな音名の関係、つまり円環構造なので、[br][b]スケール上の3和音、4和音の点を多角形の頂点[/b]として選びだしましょう。[br]3和音ならば、その和音がキーのi 番目なら、[b]Cp3={MN2(i),MN2(i+2),MN2(i+4)}と番号リスト[/b]を作ります。すると、12等分の点から[b]polygon(pt(Cp3(1)),pt(Cp3(2)),pt(Cp3(3)))[/b][br]とするだけで三角形が指定できます。[br]4和音場合は、スケール上の位置MN2で、さらに偶数番増やせばよいですね。[br]くわしくは、かくれた「数式」を広げて、グラフィックビューを一時的にせまくして、観察しましょう。

Information: マイナースケール上の和音