tapのチラ裏

書きたいこととか作ったものとかいろいろ書いていきます。

お久しぶりです

これだけ時間が空いても、コンスタントに1日1人か2人来てくれる方がいるようでありがとうございます。アクセスを見てみると、1月17日に0人、1月18日に4人でした。同じ高3が見てくれているのでしょうか…


まだ受験は続いていて合間を縫う時間もないので更新は2月中旬までできないと思いますが、思い立ったらこのブログを眺めに来てくれると嬉しく思います。

音を鳴らしたい人のための楽器

ネタが思いつかないので、音楽の話をしたいと思います。


感覚的に音楽を奏でることができる楽器というものがあります。korgカオシレーターなんかがそうですね。僕はこういう楽器が大好きなのですが、凝ったことができないのが玉に瑕です。


そういうわけで、感覚的に音楽を奏でられ、なおかつ少し凝ったこともできる楽器を考えてみたいと思います。ちなみに電子楽器を考えています。

鍵盤の形の楽器を考えます。しかし、ピアノやキーボードのような鍵盤楽器だと音楽未経験者では使いこなせません。それはおそらく、鍵盤が「ドレミファソラシド」と並んでいるからではないでしょうか。

そこで、「ドレミファソラシド」の代わりにこんな順番を作ってみました。

レファラドミソシレファ♯ラド♯ミソ♯シレ♯ファ♯ラ♯ド♯ファソ♯ドレ♯ソラ♯

これは音階を適当に並べたわけではありません。ちゃんと理由があるんです。

最初の7音を見てください。「ドレミファソラシ」が一つずつ出てきていますね。つまりハ長調(イ短調)のスケールです。

次に3つ目から9つ目を見てください。よく見るとト長調のスケールが出てきているのがわかりますね。

このように、この並び方は全ての調のスケールが連続した7音で出せるんです。そしてこれは鍵盤を2つずらすとスケールが5度上がるようになっています。しかし、それだけではありません。

最初の3音「レファラ」はDmのコード、2つ目から4つ目「ファラド」はFのコード、3つ目から5つ目「ラドミ」はAmのコード、とハ長調のダイアトニックコードが出てくることがわかると思います。

最初の6つのコードはハ長調のダイアトニックコード、3番目から8番目のコードはト長調のダイアトニックコード、5番目から10番目のコードはニ長調のダイアトニックコード、とさっきのスケールと同じく2つずらすとスケールが5度上がるんです。

この鍵盤を五度環のように円状に並べれば、音楽未経験者でも感覚的にスケールやダイアトニックコードがわかりますね。あとは25鍵のキーボードのようなオクターブ変更ボタンをつければ完成です。

f:id:xyzdoragonkyanon:20141205222254j:plain

視覚に訴える音楽 その2

音楽を光で表現する試み第二回です。今回は音の音色と光の彩度の組み合わせ、それとオクターブ違いの音の区別について考えていきたいと思います。


こじつけと言えど、音色と彩度に共通点がないわけではありません。例えば同じ「ド」の音でもトランペットの音と尺八の音では印象が違います。同じ「赤」でも紅茶の色と紅葉の色では印象が違います。


その基準を、音では正弦波、光では白とします。そして、元になる正弦波から違えば違うほど音は豊かになっていき、元になる白から違えば違うほど鮮やかな赤になっていきます。


ここで、正弦波からの違いを計る基準としてその音に混ざっている倍音から「音の鮮やかさ」を定義したいと思います。


以前、波は数列Anと数列Bnで決定すると説明したと思います。この数列を関数とみなしてf(n)=An+Bnとすると、f(n)を定積分した値を「音の鮮やかさ」とします。ここで積分の範囲を指定してしまうと彩度では足りなくなったり音の見分けがつかなくなったりするので、積分の範囲は適宜判断することにして、ここでは1から4までを積分します。


正弦波はAn=0、Bn=0なのでf(n)=0、積分しても0なので「音の鮮やかさ」は0となります。


ノコギリ波はAn=1/n、Bn=0なのでf(n)=1/n、積分すると約0.6なので「音の鮮やかさ」は0.6となります。


全ての倍音が基準の音と同じ音量でなっている音を考えてみます。An=1、Bn=0なのでf(n)=1、積分すると3なので、「音の鮮やかさ」は3となります。


この「音の鮮やかさ」を彩度と同じものとして、音の3要素の最後「音色」を光である程度表すことができました。




めでたく音を光で表す方法を定義できたところで前回残していた「オクターブ違いの音の区別をする方法」を考えたのですが、これがどうにもできません。


というのも、周波数という観点で音階を色相環で表してしまったがためにオクターブ違いの音が同じ色で表されることになってしまいました。色の3要素である色相、明度、彩度は全て使ってしまったので、もう「光」に頼ることができなくなってしまったのです。


そこで、光源を動かすことを考えてみます。音が低ければ低いほど早く動きます。どうせなので、ドップラー効果と関連づけて定義したいと思います。


光は音のドップラー効果とは少し違います。音の速さは変化しますが、光の速さは変わらないからです。そして、その性質のために光は観測者から見て垂直に動いていてもドップラー効果が起きます。そのときの光源の速さと光の周波数の関係はこのようになります。


f=f'√{1-(v/c)^2}


f'を光の周波数、vを光源の速さ、cを光の速さとすると、観測できる光の周波数はfになります。もちろん、これを使って1オクターブも変化させることはできません。vを光速の√3/2倍の速さで動かさないと1オクターブ変化しませんから、あまり現実的ではないし、実際に1オクターブ変化させたいわけではなく飽くまでもオクターブで変化がわかるようにしたいだけなので少しズルをします。


ここでのcを好きな数を入れることができることにします。そうするとその数の√3/2倍の速さで動かすことで1オクターブ下げることを表現できるわけです。


ここまで一通り音楽を光で表現するための考察をしてきました。僕自身考察しているうちに音と光は同じ波でも性質がとても違うことに気づきました。もし「もっとこうすれば音に忠実になるんじゃない?」という考察があるのであれば、ぜひお聞きしたいです。

視覚に訴える音楽 その1

お久しぶりです。そろそろ受験の方が忙しくなってきたので不定期更新です。今回は音と光についてです。

目と耳が不自由なヘレンケラーは楽器に触れて振動を感じることで音楽を楽しんでいたそうです。その振動は間違いなく音なので、それを楽しむのは音楽だと思います。しかし、僕は音楽を振動で楽しめる自信がありません。僕だけではなく、多くの人がそうだと思います。


ヘレンケラーは視覚と聴覚が不自由なので触覚に頼らざるを得なかったかもしれません。しかし視覚が自由な人なら聴覚が不自由でも、今の時代ならもっとよく楽しむ方法があると思うんです。

それでは物理の話をします。聴覚で感じられる音とは音波という波です。視覚で感じられる光も光波という波です。多少の違いはありますが音を光で再現できるのではないか、ということを今回は考えていきます。今回は音の三要素のうち「音程」と「音量」を再現する方法を考えます。

音と光の違いはなんでしょうか。人間は音を20Hzから20000Hzまで感じることができますが、光は4×10^14Hzから8×10^14hzまで感じることができます。

何が不都合かと言うと、光では1オクターブ上下してしまうと見えなくなってしまうんです。1オクターブの範囲で演奏しなければならない上、光では正弦波とノコギリ波の違いがわかりません(前回の記事参照)。

聞こえる音の範囲と見える光の範囲を無理やり合わせても、ドとド♯が両方とも「赤」という同じ色に見えてしまいます。音楽では同時に鳴らすと不協和音なので、ドとド♯の光が一緒になってしまうのは音を光で再現するという趣旨から逸れますよね。

そこで、妥協案として色相環に登場してもらうことにしました。色相環は周波数に厳密ではありませんが、オクターブの関係を表すには都合がいいんです。

色相環は赤、黄、緑、青緑、青、紫、赤と似ている色同士が隣り合って円を作っています。音階もドレミファソラシドで円を作ることができます。なので、色と音階を対応させていきます。

赤:ド
黄:レ
緑:ミ
青緑:ファ♯
青:ソ♯
紫:ラ♯

足りない音階は間の色を使います。ド♯は赤と黄の間なのでオレンジです。ドとド♯が赤とオレンジなので、似ているとは言え区別ができるようになりました。1オクターブ違いの音の区別ができないという問題が残ってしまいましたが、これは後で考えることにしましょう。

音の三要素の一つ「音程」の話が終わったので、次は「音量」の話を始めましょう。音量は波で言うと振幅です。光では「明度」という色の要素を使います。

例えば、パソコンや携帯の画面はRGB(赤、緑、青)という光の三原色の強さの違いで色を変えています。この光はパソコンや携帯の設定で強くしたり弱くしたりできますよね。強くすると明るくなり、弱くすると暗くなります。音を弱くすると音が聞こえなくなるのと同じで、光を弱くすると光が見えなくなるということです。

次回は「音色」について、そして「音程」の残った問題について考えます。上でも書きましたが、光で正弦波とノコギリ波の違いを感じるのはおそらく不可能だと思います。

これまで音の三要素の音程、音量、音色と色の三要素の色相、彩度、明度のうち二つずつを(こじつけて)組み合わせました。残った音色も彩度と組み合わせてみようと思います。

音色と位相

今回は音程から離れて音色の話をしたいと思います。シンセサイザーなどで音色を作るときなど、音楽と物理学の1番の接点だと思います。


そもそも、音には「音量」「音程」「音色」の3つの要素があります。そして、音は空気の振動です。振動は数式で表すことができます。例えばこんな感じです。


y=Asinωt


A:振幅。音量に関係があります。

ω:角速度。周波数に比例しているので音程と関係しています。

t:時間。

sinωt:位相。音色と関係があります。


これまで周波数や音程について考察してきましたが、今回は位相や音色について考察したいと思います。


まず、全てのものが原子でできているのと同じように、全ての周期的な波は正弦波でできています。


○sinx+○sin2x+○sin3x+…+○cosx+○cos2x+○cos3x…

(それぞれの○に実数を入れる)


この式だけでピアノの音やトランペットの音、人間の声までも作ることができるんです。つまりこの式を使うことを約束していれば、○に何の数が入るかという情報だけで音をつくることができますよね。


例えば、最初の○に1、2番目の○に2、3番目の○に3…と入れていくと、ノコギリの刃のような形の波ができます。シンセサイザには欠かせない音ですね。


普通、数列を使って表現します。例えば音をこんな風に表すとします。


y=Σ[k=1→∞](An sin nx+Bn sin nx)


AnとBnは数列です。An=n、Bn=0とすれば、ノコギリ波になります。ちなみに、Σは総和と言って、nが1のとき、2のとき、3のとき、、、を無限に足していくという意味です。


そして、今まで何も断らずにxという変数を使っていましたが、これは一番上で説明したωとtをかけたものです。ωは2πfと同じ値をとるので、x=2πftと表せます。


f=440×2^(n/12)という式を「12分の1オクターブ」で出しました。nが混同してしまうので、こちらはf=440×2^(m/12)とします。


これまでのことを踏まえてノコギリ波をmとtで表すとこうなります。


y=Σ[n=1→∞] n sin 880πnt×2^(m/12)


この式に適当な音階mを入れると昔のゲームのような音を聞かせてくれるわけです。


半音で定義する

前回、音階を半音を使って定義しました。今回はこれを活用するので、これを読み進める前に前回の記事の結論だけでも読んでみてください。


今回はスケールと3和音を半音sで再定義していきたいと思います。


スケールとは、ドレミファソラシのことです。スケールにはキーというものがあって、それを基準にスケールが構成されます。


例えば、キーの音をk半音をすると、


長調:k、k+2、k+4、k+5、k+7、k+9、k+11

短調:k、k+2、k+3、k+5、k+7、k+8、k+10


という音を使って曲ができます。たまにスケールにはない音を使うこともありますが、基本はスケールの音を使います。


次に3和音です。和音にはルートという音があります。和音の元になる音です。このルートの音階をt半音とします。そして、ルートの音名(ドならC、レならD)をTとします。


メジャー:

tとt+4とt+7の和音をメジャーと言います。こればっかりは科学的根拠はありませんが、明るい感じの和音になります。TとかTMと書くとルートがTのメジャーの和音を表します。


マイナー:

tとt+3とt+7の和音をマイナーと言います。暗い感じの和音になります。Tmと表します。


メジャーとマイナーの二つは「ハーモニーを物理学で奏でる」で協和音であることがわかりました。次に、不協和音の3和音を再定義します。


ディミニッシュ:

tとt+3とt+6の和音をディミニッシュと言います。使い所によって色んな効果が出ます。Tdimと表します。


オーギュメント:

tとt+4とt+8の和音をオーギュメントと言います。こちらも使い所で効果が変わります。Taugと表します。


ここまで数学的に定義できれば、自動で曲を作るようなプログラムくらいできそうだな、と思っていたのですが、どうやらすでにできているみたいですね。

勝手に音階を数で定義しました。

世の中には便利なものがたくさんあります。音を書くことができる「楽譜」とか、物理現象を数で表せる「公式」というのはそのいい例です。しかし、何か新しいことを始めようとしたとき、今までの概念で不便だと感じたとき、自分で新しい概念を作らなければいけません。とは言ってもこれからすることは難しい話ではありません。数学が嫌いでも音楽が好きなら結論だけ見れば理解できます。


前回、f=440×2^mの式を使って平均律の説明をしました。今回はこの式を少し変えます。


f=440×2^(n/12)


fは周波数、nは整数です。nに12で割って割り切れる数を入れると「ラ」、1余る数を入れると「ラ♯」、2余る数は「シ」…というようにnを12で割った余りで音階がわかるようになっています。この式をnをfで表す式に変形します。


n=12 log2(f/440)


そして、さらにこんな式を作ります。


n-3≡s (mod12)


この式は「n-3を12で割ったときの余りはs」ということです。sの単位は便宜上「半音」にします。この式にさっきのnをfで表す式を代入します。


12 log2(f/440) -3≡s (mod12)


だいぶ複雑な式になってしまいました。しかしこの式が言っていることは、sが0半音のときド、1半音のときド♯、2半音のときレ、3半音のときレ♯…ということです。0≦s<12で、sが整数でないときを考える予定は今のところありません。


これから数学や物理を使って音楽を考察していきたいので、音楽で使う「3度」や「5度」は計算に使いづらいです。なので、上の式で定義した変数sを使って考察していきたいと思います。


例えば、周波数4:5:6のハーモニー、メジャーコードはこれからはt半音、t+4半音、t+7半音のハーモニーと言います。t=0のときにドミソの和音、t=7のときにシレソの和音を表せます。いちいち周波数の話をしなくてもよくなりますね。