計算機で数学をやってみよう I – 音と数学 –
内藤 久資
1998年8月4日・5日
1 序論
1.1
数学とコンピュータの関わり•
数値計算.例えば, 微分方程式の数値解析など.
–
数値解析による現象の解析.–
数値計算のためのアルゴリズムの数学的証明.•
証明中で必要な計算の検証など.数式処理システムを利用することが多い.
–
複雑な式の変形など.–
多くの例を計算.•
コンピュータシステムに利用される数学. 例としては, 以下のようなものがある.–
暗号理論.–
情報理論.今回の内容は,「数学的に計算された内容をコンピュータを利用して実証する」という意味 では,「数値計算を利用した現象の解析」に近い内容でもあり,「概念的に正しいと思われ る数学的内容を検証する」という意味もある.
コンピュータを利用する上で,数学の基礎知識は必要不可欠なものである.
1.2
三角関数の基礎知識「音」という内容に即して数学を展開するには,三角関数の基礎知識は必要不可欠である.
ここで利用する三角関数はすべて弧度法によって表示されている.
1 1
θ sin θ
cos θ
すなわち, 角度を360度法と弧度法で表した時の対応は次の通り.
360度法
0 ◦ 30 ◦ 45 ◦ 60 ◦ 90 ◦ 180 ◦ 360 ◦ 720 ◦
弧度法0 π 6 π 4 π 3 π 2 π 2π 4π
この時, sin(θ) とcos(θ)
のグラフは次のようになる.-6 -4 -2 2 4 6
-1 -0.5 0.5 1
-6 -4 -2 2 4 6
-1 -0.5 0.5 1
cos(θ)
のグラフはsin(θ)
のグラフをπ 2
だけ平行移動したものに一致する.三角関数の基本的な性質は,以下のものがある.
• | sin(θ) | ≤ 1, | cos(θ) | ≤ 1.
• sin(θ + 2nπ) = sin(θ), cos(θ + 2nπ) = cos(θ).
• sin(θ) = cos(θ − π 2 ).
• sin( − θ) = − sin(θ), cos( − θ) = cos(θ).
• sin(θ) = 0
であることとθ = nπ
であることは同値.• cos(θ) = 0
であることとθ = nπ + π 2
であることは同値.• sin(α + β) = sin(α) cos(β) + cos(α) sin(β).
• cos(α + β) = cos(α) cos(β) − sin(α) sin(β).
• sin(α) + sin(β) = 2 sin( α+β 2 ) cos( α − 2 β ).
• (sin(θ)) = cos(θ), (cos(θ)) = − sin(θ).
•
2つの実数a, b
(a 2 + b 2 = 0
)に対して, cos(θ) =√ a
2a +b
2, sin(θ) = √ a
2b +b
2 を満たすθ
が0 ≤ θ < 2π
の範囲にただ一つ見つかる.• a sin(θ)+ b cos(θ) = √
a 2 + b 2 sin(θ + α).
ただし,α
はcos(α) = √ a
a
2+b
2, sin(α) = √ b a
2+b
2を満たす数.
2 音とは何か
音とは,空気(媒質)の振動(疎密波)によって, 鼓膜が振動を受けて認識される感覚で ある. したがって, 音源の振動が音を生み出す元となっている. ここでは, 音源の振動を数 学的に解析することによって, 音とは何かという疑問に答えていく.
2.1
波の数学音源が振動することによって, 媒質の振動を生み出し,それが音として聞こえるのである から, 音源の振動とは何かを調べる必要がある
1 .
それは, 単純に次のようなものと理解す ることができる.音源となる物質の振動とは, その物質内を伝わる波によって生み出される.
すなわち, 音を解析するためには, 音源の中に発生する波を解析すれば良いことがわかる.
2.1.1
無限に長い線分上を伝わる波始めに, 無限に長い線分の上を伝わる波について解析をしてみる. イメージとしては, 無 限に長いピアノ線を思い浮かべれば良い.
もっとも単純な波を記述するものとして, ここでは正弦波を考えることにする
2 .
すなわ ち, 線分上に座標x
をとり, その線分上に発生する, 速度c,
振幅A
を持つ波は, 時刻t
と 位置x
によって,f (x, t) = A sin(2π x − ct
λ ) (1)
によって記述されているとする. すなわち,
f (x, t)
は, 位置x,
時刻t
での弦の変位を表し ていると考える. ここで,λ
は任意の定数であり, 波の波長と呼ばれる. 波長は正弦波の1 周期の長さを表している. さらに,c = λν
という関係式で定まるν
を振動数と呼び, ある 固定した点で, 1秒間に何回振動しているかを表している. また,k = 2π/λ
を波数と呼ぶ.これらの数値を使えば,
f(x, t) = A sin(k(x − ct))
と書くこともできる. この波は, 線分の正の方向に進む波を表している.
一般に物理学においては, 現象は微分方程式で記述されることが多い. すなわち,物理現 象を数学的に表現するためには,そこに現れる物理的な性質から導かれる様々な式を, 関数 とその微分などの関係式として表現し,その解が現象を表していると考える. この考え方に 沿って, 上の正弦波
(1)
が満たす微分方程式を計算してみよう. 正弦波f (x, t)
は, 座標x
1 正確には,音源の周りにある物質の反射,吸収によって,音は複雑に変化をしていくのだが,問題を単純化 し, ものごとの本質を抜きだしていくのが数学の役目であるから,ここでは,音源の振動ということに着目し て調べていこう.
2 後に
Fourier
変換という方法を使って,正弦波が波の中で本質的なものであることを示す.と時刻
t
に依存した関数であるので,f (x, t)
の変数x
による微分と, 変数t
による微分を 計算する必要がある. これを計算すると,∂
∂t f(x, t) = − ckA cos(k(x − ct)), ∂
∂x f(x, t) = kA cos(k(x − ct))
となり,∂
∂t + c ∂
∂x
f(x, t) = 0 (2)
を満たしていることがわかる.
一方, (1) は線分上を正の方向に進む波であったので,負の方向に進む波
g(x, t) = A sin(k(x + ct)) (3)
を考えると,
g(x, t)
は∂
∂t − c ∂
∂x
g(x, t) = 0 (4)
を満たすことがわかる. これら
(1), (3)
がともに満たす微分方程式を考えると, (2), (4) の 積をとることにより,∂ 2
∂t 2 − c 2 ∂ 2
∂x 2
f(x, t) = 0 (5)
という方程式を導くことができる. この方程式
(5)
を波動方程式と呼び,速度c
で伝搬する 波を表す方程式として,古くから知られている3 .
ここで, 波動方程式の解の特徴的な性質をいくつか見ていくことにしよう
.
•
波動方程式(5)
の解を2つとってくる. これをu 1 (x, t)
とu 2 (x, t)
とおく. この時,u(x, t) = au 1 (x, t) + bu 2 (x, t)
も再び(5)
の解となる. これは,∂ 2
∂t 2 (u 1 + u 2 ) = ∂ 2
∂t 2 u 1 + ∂ 2
∂t 2 u 2
という
,
関数の和の微分がそれぞれの微分の和になることから導かれ,この性質を重ね 合わせの原理と呼び, 重ね合わせの原理が成り立つ微分方程式を線形な微分方程式と 呼ぶ.•
波動方程式の解をf (x, t) = A sin(k(x − ct))
の形に制限したとしても,k
として任意の 値をとりうる. 重ね合わせの原理と組み合わせれば,任意の周波数の波を重ね合わせた ものも, 再び解となる4 .
3 もっとも, 物理学の道筋としては, この逆を行なっていて, 先に微分方程式が導かれ, その解の一つと して, 正弦波を得ることができる. すなわち, (5) から, 解は, 任意の関数
u
1 とu
2 を用いて,f (x, t) = u
1(x − ct) + u
2(x + ct)
と書けることがわかる.4 逆に,
A sin(k(x − ct))
の形の関数を組み合わせることによって,任意のu(x − ct)
の形の関数をつくり出すことができる.
2.1.2
両端を固定した弦の振動今度は, 長さ
L
の線分の両端を固定しよう. すなわち, 長さL
の線分でx = 0
とx = L
において常に変位の値は0
という条件の元で, どのような波が許されるかを考えることに する. この場合においても,線分上の速度c
の波を記述する方程式は, 波動方程式(5)
であ ることに変わりはない. 微分方程式は, 弦の各点での物理的な性質によって決定され, 両端 が固定されているという状況によっては影響を受けることはない. しかしながら,両端が固 定されていることによって生じる違いは,解f(x, t)
が常にf (0, t) = f (L, t) = 0
を満たさなければならないということである. これをまとめると, 長さ
L
の両端を固定し た線分上の速さc
で伝搬する波は,
∂ 2
∂t 2 − c 2 ∂ 2
∂x 2
f(x, t) = 0, x ∈ [0, L], f (0, t) = f (L, t) = 0
(6)
を満たさなければならないということである. ここで, (6) の中で与えられた
f (0, t) =
f(L, x) = 0
という条件は, 方程式の解に対して制限を与えるものであり, このような条件を境界条件と呼ぶ.
波動方程式
(6)
の解を求めるために, 次のような様子を見てみよう. まず, 解f (x, t)
は,f (x, t) = η(t)φ(t)
と変数分離されていると仮定する
5 .
(このような形で書ける解を定在波と呼ぶ. )この時, 波動方程式(6)
を利用すると,c − 2 η (t)φ(x) = η(t)φ (x)
となり,(η(t) = 0, φ(x) = 0
となる点を除いて)c − 2 η (t)
η(t) = φ (x)
φ(x) (7)
が成り立つ. この方程式
(7)
の左辺はx
に依存せず,右辺はt
に依存しないので, 結局, 両 辺はx, t
に依存しない定数であることがわかる. ここでは, その値を− λ
と書こう. する と, 方程式(7)
はη (t) = − c 2 λη(t), φ (x) = − λφ(x),
5 実際には,波動方程式
(6)
の解は,定在波に限るわけではなく, 次のような形の解も存在する.˜
u(x, t) = 1
2 max { 1 − | x − ct − 4 | , 0 } + 1
2 max { 1 − | x − ct − 4 | , 0 }
とおき,
f (x, t) = ˜ u(x, t) − ˜ u( − x, t)
とおけば,f(0, t) = 0
を満たす,実際に進行している孤立した波を表して いる. 複数の反射壁を持つ時には,このような解を無限個重ね合わせる必要がある.しかし, 実際の音を生み出す解は, このような形のものになるため,ここでは,定在波の解析を行なうこと にする.
という2つの方程式に分解されたこととなる. ここで, 境界条件
f(0, t) = f(L, t) = 0
を考 慮に入れると,f (0, t) = η(t)φ(0) = 0, f (L, t) = η(t)φ(L) = 0
より,η (t) = − c 2 λη(t), (8)
φ (x) = − λφ(x),
φ(0) = φ(L) = 0, (9)
という方程式を考えれば良いことがわかる.
始めに, 方程式
(9)
の解を解析してみよう. この方程式の解は,一般的に次のように書け ることが知られている.φ(x) = a 1 sin( √
λx) + a 2 cos( √ λx).
ここで,境界条件
φ(x) = 0
を考慮すると,a 2 = 0
となり,φ(x) = a sin( √
λx) (10)
という形に限ることがわかる. さらに, もう一つの境界条件
φ(L) = 0
を考えると, この条 件を満たすためには,√
λL = nπ, n
は整数という条件を満たさなければならないことが容易にわかる. すなわち,
λ = n 2 π 2
L 2
である. ここで,
n = 0
すなわち,λ = 0
と,a = 0
は全く振動しない波を表すので, 対象か ら除外し,n
が負の場合には,a
に対して,− a
をとれば良いので,n
としては,正の整数(自 然数)をとれば良いことがわかる. ここで, 自然数n
に対して,λ n = n 2 π 2
L 2 , φ n (x) = a sin(
λ n x) (11)
と定義すると,この
φ n (x)
が(9)
の解のすべてとなる. すなわち,方程式(9)
も線形な方程 式であるので, (9) の解は,φ(x) =
∞ n=1
a n sin(
λ n x)
と書けることがわかる.次に,
φ(x) = φ n (x)
の時に, 対応するη(t)
を求めてみよう. 明らかに,φ (x)/φ(x) = − λ n
となるので, この場合には,方程式(8)
は,η (t) = − c 2 λ n η(t)
となり,解はη(t) = A sin(
λ n ct) + B cos(
λ n ct)
と書けることが知られている.
すなわち, 長さ
L
の線分上の定在波の波長はλ n
で書け,この時の振動数は,ν n = c √
λ n
2π = nc 2L
となる.以上をまとめると,次の定理を示したこととなる.
Theorem 2.1.
自然数n
に対して,λ n = n 2 π 2
L 2 , ν n =
√ λ n c 2π = nc
2L φ n (x) = a sin(
λ n x), η n (t) = A sin(
λ n ct) + B cos(
λ n ct)
と書いたとき, 波動方程式
∂ 2
∂t 2 − c 2 ∂ 2
∂x 2
f (x, t) = 0, x ∈ [0, L], f(0, t) = f(L, t) = 0
の定在波は,
f(x, t) =
∞ n=0
η n (t)φ n (x) (12)
と書ける.
これを別の言葉でいい直せば,次のようになる.
長さ
L
の線分上に存在する波(定在波)は,
その波長(振動数)がとびとびの値しかとり 得ない.ここで,始めに波動方程式
(5)
の解はf (x, t) = u 1 (x − ct) + u 2 (x + ct)
で書ける, すなわち, 速度
c
と− c
で進む波によって構成されることを見た. 定在波は, 一 見すると, 止まっている波のように見えるのだが, これは例えばsin(k(x − ct)) + sin(k(x + ct)) = 2 sin(kx) cos(kct)
と書けるので,定在波とは,正の方向に進む波と,負の方向に進む波とが重なって,止まって いるように見えているという理解ができることに注意しよう.
2.2
固有値と固有関数長さ
L
の線分上の定在波を考えた時,その波長(振動数)を決定する本質的な部分は,方 程式(9)
であった. すなわち,
φ (x) = − λφ(x), φ(0) = φ(L) = 0
が解を持つような
λ
を決定するという問題が本質的な部分であった.この方程式が元の波動方程式からどのように導出されたかを, もう一度注意深く見てみ よう. 元の波動方程式は
∂ 2
∂t 2 − c 2 ∂ 2
∂x 2
f (x, t) = 0
に境界条件をつけたものであった. この方程式に対して,
f (x, t) = η(t)φ(x)
と仮定し, 方程 式を分解した結果, 出てきたのが(9)
である. そこで,∆ = ∂ 2
∂x 2
と書いてしまえば, (9) は
∆φ(x) = − λφ(x),
φ(x) = 0, x
は領域の境界(13)
と書けることがわかる. このような性質を持つ関数
φ(x)
を作用素∆
に対する固有関数と よび,λ
を固有値と呼ぶ.ここで, 設定を一般にして, 問題の意味を考えてみよう. すなわち, 物体の境界が固定さ れている時
,
物体上に存在する定在波の「波長」(または「周波数」)は,
作用素∆
(ラプラス
(Laplace)
作用素)の境界条件つきの固有値から決定されるということが, この方程式の意味であることがわかる. これまでは, 物体としては, 長さ
L
の線分を考えてきたが, 例えば,「ド ラム」のようなものを考えれば,物体としては2次元(またはそれよりも高次 元)の物体を考えることも, 数学的には意味のあることである.さて, (13) の解となる固有値はすべて
0
以上の数であり, 固有値は無限個あることが知 られている6 .
固有値0
に対応する固有関数はφ(x) = 0
であるので,これを除外して,それ 以外の固有値をλ n
と書く. すなわち,0 < λ 1 ≤ λ 2 ≤ · · ·
であり, 固有値
λ n
に対応する固有関数をφ n (x)
と書くことにする7 .
一般に, 固有値は領 域の大きさ, 形によって異なる数値をとる.6 正確には,領域がコンパクトの時に,このような性質を持つ.
7 正確には,
φ
n(x)
が固有関数である時に,その定数倍もまた,同じ固有値に対応する固有関数となるので, 適当な意味で正規化しておく必要がある.この時,
f(x, t) = η n (t)φ n (x)
が波動方程式の解となるためには,η n (t)
c 2 η n (t) = φ n (x)
∆φ n (x) = − λ n
を満たすことが必要となるので,前と同様に,η n (t) = A sin(
λ n ct) + B cos(
λ n ct)
でなければならないことがわかる. この時の振動数は,
ν n = √ 2π λ
nc
である.したがって,ここまでのことをまとめると,次のような定理になる.
Theorem 2.2.
物体Ω
上の波動方程式
∂ 2
∂t 2 − c 2 ∂ 2
∂x 2
f (x, t) = 0, x ∈ Ω, f(x, t) = 0, x ∈ ∂Ω
の解のうち, 定在波は, ラプラシアンの固有値問題
∆φ(x) = − λφ(x), x ∈ Ω, φ(x) = 0, x ∈ ∂Ω
の固有値
{ λ n }
と固有関数{ φ n }
を用いて,f (x, t) =
∞ k=0
a n η n (t)φ n (x)
と書ける. ここで,
η n (t) = A sin(
λ n ct) + B cos(
λ n ct)
である.また, 物体の形を変えずに大きさだけを変えた場合の固有値の変化の様子は容易に計算 することができる.
Theorem 2.3.
物体Ω
の大きさをk
倍した時, 固有値はすべてk − 2
倍となる.2.3
まとめここまでのことをまとめてみよう.
物体
Ω
に発生する波の振動数は固有値問題(13)
によって制御される. その振動数{ ν n }
は物体の形と大きさに依存し,ν n =
√ λ n c
2π
と書ける.物体の大きさを
k
倍すると, 固有値はk − 2
倍されるので, 物体の大きさが大きいほど振 動数が低くなり, 物体の波の速さが速いほど振動数は高くなる8 .
また, 物体上の波がとり 得る振動数は,物体の形等に依存したとびとびの値しかとり得ない.我々が耳にする音とは,このような物体上の波の振動から生み出される媒質(空気)の振 動である. 前にも述べた通り, 実際の波は単純な正弦波ではなく,いろいろな振動数の波が 重ね合わせの原理によって重ね合わされているが,音の高さを決定している要素は,その中 でも最も振幅の大きな波の振動数である.
8 物体上の波の速さは,物体の張力等に依存する.
3 音を合成する
前の章では,音とは波の合成でできていることを見た. ここでは, 実際にどのようにすれ ば音を合成できるかを見てみよう.
音は物体を伝わる波から発生する振動によって生み出されているので, 始めに単純な正 弦波から発生する波を作ってみよう.
物体が振動数
ν
によって振動している時に発生する音は,f(t) = A sin(2πνt)
と書くことができる. 変数
t
を時間と考えると, この関数は1秒間にν
回の振動をしてい る波である. 我々が音源から伝わる媒質の振動を耳にする時,音源上の波の振動,すなわち 関数の時間に依存した部分だけを感じているのであって, 音源上の波の位置による部分は 感じることができない. したがって,本質的に音として聞こえる部分は, 波の振動数に依存 した部分である.物理学では, 振動数は
Hz
という単位で表され,1秒間にk
回振動している波の振動数をk Hz
という. すなわち,f (t)
はνH z
の正弦波による音を表している. 人間の耳が聞きとれる音は,一般に
20Hz
から20000Hz
程度といわれている.ここでは,時報の音の高さである
440Hz
の音を作ってみよう.このような, 単一の周波数からなる音を純音と呼ぶ.
3.1
弦から発生する音ところが実際の音は, このような単一の周波数からだけで構成されているわけではない.
ここでは, 実際に弦の振動から発生する音を考えてみよう.
弦を叩くと,弦の上に波が発生し,そこから音が生まれる. この音のでき方を単純化する と, 弦の上に発生する定在波から音が発生していることがわかるので,この音は叩いた弦の 上に存在できる定在波からできていると考えられる.
ここで, 一つの弦に関して, どのような周波数の音が含まれるかを考えてみよう. 弦の長 さを
L,
その上の波の速さをc
とする.(波の速さは, 弦の張力,材質に依存する.)この時, 前に考えた通り,λ n = n 2 π 2 L 2
とおくと, その上の定在波の周波数はν n =
√ λ n c 2π = nc
2L
で決まる. すなわち,発生する音の周波数は
{ ν n }
となる. このように, 実際の音は,周波数ν n
のいろいろな音が混ざりあってできている.この音を聞いた時に,我々が感じる音の高さとは, 何から決まっているのかを考えてみよ う. 一般に,定在波から発生する音の周波数は
ν n =
√ λ n c 2π
で決まるので,我々が耳にする音は,η n (t) = a n sin(2πν n t) + b n cos(2πν n t)
なる関数の集まりη(t) =
∞ n=1
η n (t)
を聞いていることとなる. このうち,音の強さが最も大きい周波数の音を,我々は音の高さ として認識している. 音の強さとは,
a 2 n + b 2 n
で表される値のことである.一般に, 最も低い周波数の音を基底音と呼び, それ以外の音(の成分)を倍音と呼ぶ. す なわち,弦から発生する音の場合には, 基底音の周波数を
ν 1
とすると, 倍音として,ν n = nν 1
の周波数の音が含まれていることがわかる.
実際には, すべての倍音の振幅が同じということはなく, 高い周波数の成分ほど, 振幅が 小さくなる. この倍音の成分とその振幅の様子が音の音色を決めていることがわかる. 倍 音成分の様子は, 音源の物理的性質,音源の周りの様子などによって, 複雑に変化する.
ここでは, 実際にフルートの音の倍音成分の分布を調べてみよう
9 .
すると, 次のような データを得ることができる.n cos(ν n )
の成分= b n sin(ν n )
の成分= a n
1 +0.015636 +0.030164
2 +0.536752 -0.507734
3 +0.802538 -1.000000
4 +0.083393 -0.338684
5 +0.324261 +0.173519
6 +0.380096 -0.697617
7 -0.164064 -0.023018
8 +0.053562 +0.018355
9 -0.455701 -0.264336
10 -0.196629 +0.634445
このデータから, 逆に楽器の音を復元することができる. すなわち, この表を元に, 振動数
νHz
の音を作ることを考えてみよう. このデータから, 最も音の強さの大きなものはν 3
の 成分であることがわかるので,ν = ν 3
とおき,η(t) =
10 n=1
a n sin(ν n t) + b n cos(ν n t)
9 ピアノは実は結構面倒.
とすれば良い. 実際の楽器の音らしく聞こえるためには, これだけでは不十分で,例えばピ アノの音の場合, 音は時間とともに減衰していくので, もっともらしく聞こえるためには,
(例えば)
η(t) = e − t (
10 n=1
a n sin(ν n t) + b n cos(ν n t))
とすれば, ピアノの音らしく聞こえてくる.3.2
音の重なり3.2.1
うなり次に, わずかに振動数の異なる2つの音を重ねてみよう. すなわち, 振動数
α
とβ
を持 つ2つの純音η 1 (t) = A sin(2παt), η 2 (t) = A sin(2πβt),
の和を計算してみる. ここで, 三角関数の和積の公式sin(a) + sin(b) = 2 sin( a + b
2 ) cos( a − b 2 )
を利用すると,η 1 (t) + η 2 (t) = 2A sin( α + β
2 ) cos( α − β 2 )
となる. わずかに振動数が異なるという条件を,α = β + n
とおくと,η 1 (t) + η 2 (t) = 2A sin(2π(α + n
2 )t) cos(2π n 2 t)
となる.ここで, 我々人間の耳には, ある程度以上高い周波数の音の強さは, 一定に聞こえるとい う性質を利用すると, sin の方の成分は, 我々の耳には, ある高さの音(周波数
α + n/2
の 音)として聞こえる. 一方, cosの成分の周波数は,非常に低いので,この部分が音の強さの 変化として捉えることができる.すなわち, 振動数が
n
だけ異なる2つの音を重ね合わせると,その音の強さがcos(2π n
2 t)
で変化することがわかる. すなわち,1秒間に
n
回の音の変化を耳にすることができる. こ れがうなりと呼ばれる現象である.0.2 0.4 0.6 0.8 1
-2 -1 1 2
一般に音が純音でない場合にも, 同じようにうなりを観測することができる. ここでは, 基底音の周波数を
ν,
音は弦から発生している10
と仮定し,η 1 (t) = a n sin(2πν n t) = a n sin(2πnνt)
と, この音に対して, 基底音の周波数がk
だけずれた音η 2 (t) = a n sin(2πn(ν + k)t)
の合成を考えてみる. すると,η 1 (t) + η 2 (t) = 2 a n sin(2π(ν + k
2 )t) cos(2πn k 2 t)
となる. 前と同様に, sin(π(ν
+ k)t)
の部分は, 音の強さとして感じることができないと思 うと,音の強さの変化は,およそ2 a n cos(2πn k 2 t)
であると考えることができる. ここで,
η 1 (t)
を音として聞いた時, 我々が感じる周波数は,{ a n }
のうち, 最も大きいものであるので, それをa n
0 とおくと,η 1 (t)
とη 2 (t)
の耳に感じ る周波数の差は,n 0 k
である. 一方, 音の強さの変化は上の式で表されているので, 音の強 さの変化はa n
0cos(πnkt)
で感じることができる. したがって, 1秒間にnk
回の音の変化 を感じることになる. すなわち, 合成音の場合にも, うなりの回数は, 周波数の差に等しい ことがわかる.0.2 0.4 0.6 0.8 1
-2 -1 1 2
10 すなわち,
ν
n= nν
ということである.3.2.2
音を重ねる我々が耳にする音がきれいに聞こえるかどうかは, その音の変化が規則的かどうかに関 わっていると考えられる. そこで, 音の変化の規則性を, その関数が
0
となる点(零点)の 分布の様子という観点から考えてみよう.始めに, 基底周波数
ν
の音に対して, その倍音を重ねていった時にどのようなことが起 こっているかを考えてみよう. すなわち,η 1 (t) = a 1 sin(2πνt)
に対して, 順にη k (t) = a k sin(2πkνt)
の音を重ねていく. この時,η 1 (t) = 0
となる時間は,T 1 = { t ∈ R ; t = k 2ν }
と書くことができる. 一般に,η k (t) = 0
となる時間は,T k = { t ∈ R ; t = k 2kν }
である. したがって,k
が正の整数の時には,T k ⊃ T k−1 ⊃ · · · ⊃ T 1
という関係があることがわかる. すなわち,基底音の零点の集合は, 倍音の零点の集合に含 まれる.
さらに,
η 1 (t) + η k (t)
を計算してみよう. ここでは,a k ≤ a 1
と仮定する. この時,η 1 (t) + η k (t) = (a 1 − a k ) sin(2πνt) + 2a k sin(π(1 + k)νt) cos(π(k − 1)νt)
となる. したがって,右辺第1項の零点の集合は{ t : t = n 2ν }
と書け,第2項の零点の集合は{ t : t = n
ν(1 + k) , t = n + 1/2 ν(k − 1) }
と書ける. 特に,a 1 = a k
とおくと,η 1 (t) + η k (t)
の零点は{ t : t = n
ν(1 + k) , t = n + 1/2 ν(k − 1) }
となり,
k
が正の整数に近いほど, 零点の分布はきれいになることがわかる. ここから読み とれることは, 基底音に対してその倍音を重ねていく操作によって, その重なり方はきれい に重なっていくことがわかる.2 4 6 8 10
-1.5 -1 -0.5 0.5 1 1.5
2 4 6 8 10
-2 -1 1 2
一般に我々が耳にしている音は, 前に述べた通り,倍音の成分を含んだ音がほとんどであ る. そこで,
η 0 (t) =
k=0
a k sin(2πkν 0 t)
と書かれる基底周波数ν 0
を持つ音と,η 1 (t) =
k=0
a k sin(2πkν 1 t)
と書かれる基底周波数
ν 1
を持つ音を重ねてみよう. この時,ν 0
とν 1
の間には, ある有理数m/n
に対して,ν 0 = m n ν 1
という関係があると仮定する. すなわち,η 1 (t) =
k=0
a k sin(2π km n ν 0 t)
である. この時, どれだけの倍音がきれいに重なるかを計算してみると,
η 1 (t)
の各成分sin(2π km n ν 0 t)
がη0 (t)
の倍音成分となるためには,km
n
が整数 すなわちk
がn
の倍数であることが必要かつ十分であることがわかる. したがって,2つの音の周波数比が「単純 な有理数」で表されているほどその音を重ねた時にきれいに重なることがわかる. ここで
「単純な有理数」とは, その有理数を既約分数で表した時, 分母が小さな整数になることで ある. 実際には, 2つの音の周波数が単純な有理数比になっていることは少ないと思われ, 正確には,「単純な有理数比により近い周波数比をもつ2つの音はきれいに重なる」という ことであると思われる.
「きれいに音が重なる」とは,実際にその音を聞いた時,きれいに響いて聞こえるという ことである. 音の重なりを,その周波数比という数学的な量に置き換えることにより, 実際 の音楽の音階が構成されている.
4 音階と数学
音楽において基本となる音の高さを表すものが音階である. ここでは,音階がどのように 構成されているかを数学を利用して解析してみよう.
4.1
オクターブ弦から発生する音を考察した時に見たように,長さ
L
の弦から発生する音の振動数はν n = nc
2L
で与えられる. したがって,弦の長さを
L/2
にすると,その時の振動数ν n
はν n = nc
L = 2ν n
となる. すなわち,弦の長さを半分にすると, 発生する音の振動数は2倍になる.
このような考察から, ある基準音(の振動数)
ν 0
に対して, 振動数2ν 0
を持つ音は, 基 準音に対して1オクターブ高いと表現される. したがって, 基準音に対してn
オクターブ 高い音の周波数は, 2n ν 0
となることがわかる. 我々人間の聴覚では,ν 0
の振動数の音と2ν 0
の振動数の音の「高さの差」と, 2ν0
の振動数の音と4ν 0
の振動数の音の「高さの差」を同 じと感じる.ここで,連続的に音の高さが変化するような音を構成したいとする. ここでは,振動数
ν 0
からν 1
まで1秒間に変化する音を作ってみよう. 始めに,η(t) = sin(2πt((1 − t)ν 0 + tν 1 )) (14)
で作ってみると, 振動数は1次関数で変化しているが, この音を実際に聞いてみると, 低い 振動数の方ほど音の高さの増加が急激であることがわかる. これは,オクターブの構成から わかるように, 我々人間の聴覚が振動数に対して,音の高さを「振動数の対数」をとるよう な形で感じているからである. すなわち,振動数ν
の音に対して,聴覚で感じる音の高さを 表す「関数」f (ν)
を考えてみると11 , f
はおおよそf (ν) ∼ log 2 (ν)
といった形になるべきである. したがって, (14)で与えた振動数の変化
h(t) = (1 − t)ν 0 + tν 1
を関数f
に適用すると,f (h(t)) = log 2 ((1 − t)ν 0 + tν 1 )
となり,グラフを見ればわかるように, 低い音の方が増加の割合が大きい.
音の高さの変化の様子が一様な音を構成するためには, 振動数の変化を指数関数的にす れば良いことがわかる. 実際,
η(t) = sin(2πt2 t ν 0 )
11 これは,明らかに数学的な概念ではなく,もの事を説明するためだけの便宜的な方法であることに注意し て欲しい.
とすれば, 1秒間で振動数
ν 0
からν 1 = 2ν 0
まで一様に音の高さが変化する音を作ること ができる.4.2
音階とは音楽において利用する音の高さを表す方法が音階であるが,それは, 1オクターブの間に いくつかの音を割り当て,その音の高さによって音楽を構成しようというものである.
音の高さが1オクターブ違う音は, 高い音に対して, 低い音の振動数が
1/2
になってい る. このように,音の振動数の比(弦の長さの比といっても良い)が単純な有理数で表され ているものほど,同時に音を鳴らした時に良い響きを持っていると考えられた. このような 考え方の元に作られたのが, 次に述べるピタゴラス音階である.4.2.1
ピタゴラス音階ピタゴラス音階とは,始めに次のような長さの弦を用意するものである.
1.
長さL
の弦,2.
長さ4 3 L
の弦,3.
長さ3 2 L
の弦,4.
長さ2L
の弦.これらの弦を用意して, それらの間の振動数の比を計算すると, 長さ
L
の弦の(基底)周 波数をν 0
とおいて, それぞれの(基底)振動数は1. ν 0 , 2. 4 3 ν 0 , 3. 3 2 ν 0 , 4. 2ν 0
となることがわかる. これによって, 1オクターブの間に2つの音の高さが割り当てられ,
ν 0 , 4
3 ν 0 , 3 2 ν 0 , 2ν 0
という3つ(4つ)の音の高さからなる音階ができたことになる.
ここで, 音階を構成している有理数
a = 1, c = 4/3, d = 3/2, b = 2
の間に成り立つ関係 式としては, 次のようなものが考えられる.1 + 2 2 = 3
2 , 1 2 (1 + 1
2 ) = 3 4 = 1
4 3
.
すなわち,
a + b
2 = d, 1 2 ( 1
a + 1 b ) = 1
c
が成り立つ.
しかし,音楽を構成するためには, これだけでは利用できる音の高さが少ないので,
ν 0
と4
3 ν 0
の間と,3 2 ν 0
と2ν 0
の間に音の高さを割り当てることを考える. それでは, それらの間 にどのように音の高さを割り当てれば良いかを考えてみよう. 今,4 3
と3 2
との間には4 3 · 9
8 = 3 2
という関係式が成り立つ. つまり,
4 3 ν 0
と3 2 ν 0
との比は9 8
である. 完全に調音された音階を 構成するためには,すべての音の比をこの値にすれば良いので,次のような音を割り当てれ ば良いことがわかる.音名
C D E F G A H C
振動数
1 9 8 81 64 4 3 3 2 27 16 243 128 2
比の値9 8 9 8 256 243 9 8 9 8 9 8 256 243
ここで,9
8 = 1.125, 256
243 ∼ 1.05
という比の値を持っている. ここで, 例えば
C
とD
の間に両側との比が等しくなる音を仮 想的に割り当ててみよう. その音の振動数をα
とすると,α 2 = 9 8
を満たすことが必要となる. このようなα
は,α = √ 3
8 ∼ 1.06
であり,ほぼ256/243 ∼ 1.05
に等しいことがわかる. したがって, E–F, H–C の間の音程は, 他の音の音程の「倍」であ ることがわかり, E–F, H–Cの間の音程を「半音」と呼び, 他の音の間の音程を「全音」と 呼ぶ.このようにして,1オクターブの間に8つ(7つ)の音を割り当てることができた. ここ で, 最初の振動数
ν 0
の音を1度, 振動数2ν 0
の音を8度と呼び, 残りの音は下から順に2 度, 3度,などと呼ばれている.この方法によって, 1オクターブが8つの音からなる音階を定めることができたが, 良く 知られているように, 現在の音階では
A , A
のような「半音」が定められているが,このよ うな音がピタゴラス音階においてどのように見つけられたかを考えてみよう.実は,5度の音を順に重ねていくことによって, 元の音と(オクターブ差を除いて)ほぼ 等しい音を作ることができる. つまり, 5度の音に対して,5度の音を作るという操作を繰 り返す. この時, 順にできていく音は,
3 2
n
ν 0
となっていくのだが,
n = 13
ととり, 7オクターブ下げると3
2
12 1 2
7
= 531441
524288 = 1.01364
となり,ほぼ元の音に戻ってくることがわかる.この方法によって作られる音の振動数を計算してみよう.
n = 0 1 0 C n = 1 ( 3 2 ) 1 ( 1 2 ) 0 = 3 2 ∼ 1.5000 702.0 G n = 2 ( 3 2 ) 2 ( 1 2 ) 1 = 9 8 ∼ 1.1250 203.9 D n = 3 ( 3 2 ) 3 ( 1 2 ) 1 = 27 16 ∼ 1.6875 905.9 A n = 4 ( 3 2 ) 4 ( 1 2 ) 2 = 81 64 ∼ 1.2656 407.8 E n = 5 ( 3 2 ) 5 ( 1 2 ) 2 = 243 128 ∼ 1.8984 1109.8 H n = 6 ( 3 2 ) 6 ( 1 2 ) 3 = 729 512 ∼ 1.4238 611.7 F n = 7 ( 3 2 ) 7 ( 1 2 ) 4 = 2187 2048 ∼ 1.0679 113.7 C n = 8 ( 3 2 ) 8 ( 1 2 ) 4 = 6561 4096 ∼ 1.6018 815.6 G n = 9 ( 3 2 ) 9 ( 1 2 ) 5 = 19683 16384 ∼ 1.2014 317.6 D n = 10 ( 3 2 ) 10 ( 1 2 ) 5 = 59049 32768 ∼ 1.8020 1019.6 A n = 11 ( 3 2 ) 11 ( 1 2 ) 6 = 177147 131072 ∼ 1.3515 521.5 E n = 12 ( 3 2 ) 12 ( 1 2 ) 7 = 531441 524288 ∼ 1.0136 23.5 H
同様にして,今度は5度づつ下げた様子を見ると,n = − 1 ( 3 2 ) − 1 ( 1 2 ) − 1 = 4 3 ∼ 1.3333 498.0 F n = − 2 ( 3 2 ) − 2 ( 1 2 ) − 2 = 16 9 ∼ 1.7778 996.1 B n = − 3 ( 3 2 ) − 3 ( 1 2 ) − 2 = 32 27 ∼ 1.1852 294.1 E n = − 4 ( 3 2 ) − 4 ( 1 2 ) − 3 = 128 81 ∼ 1.5802 792.2 A n = − 5 ( 3 2 ) − 5 ( 1 2 ) − 3 = 256 243 ∼ 1.0535 90.2 D n = − 6 ( 3 2 ) − 6 ( 1 2 ) − 4 = 1024 729 ∼ 1.4047 588.3 G n = − 7 ( 3 2 ) − 7 ( 1 2 ) − 5 = 4096 2187 ∼ 1.8729 1086.3 C n = − 8 ( 3 2 ) − 8 ( 1 2 ) − 5 = 8192 6561 ∼ 1.2486 384.4 F n = − 9 ( 3 2 ) −9 ( 1 2 ) −6 = 32768 19683 ∼ 1.6648 882.4 BB
となっている. ここで, 表の後ろから2番めの数値は, 振動数の比x
に対して,1200 · log 2 x
で与えられる数値であり,音楽では「セント値」と呼ばれている. セント値が何故このよう な式で表されるかは後に解説する.
ここで,上の表で
n = 13
を計算すると,比の値x = 3 13 2 − 20 ∼ 1.520,
セント値は, 724と なり,この音をF
と呼ぶが,これはほぼG
音に等しいことがわかる. このようにして得ら れた音をすべて並べてみると,次の表ができる.音名 比の値 セント値
C 3 2
000
D 2 3
8590.2
C 2 3
117113.7
D 3 2
23203.9
E 2 3
53294.1
D 2 3
149317.6 F 2 3
138384.4
E 3 2
46407.8
F 2 3
21498.0
E 3 2
1117521.5 G 2 3
106588.3
F 3 2
69611.7
G 3 2
11702.0
A 2 3
74792.2
G 2 3
128815.6 (BB) 2 3
159882.4
A 3 2
34905.9
B 2 3
42996.1
A 3 2
10151019.6 C 2 3
1271086.3
H 3 2
571109.8
(H ) 3 2
12181223.5
ここで作られた各音の周波数比は,次のような値を持つことがわかる.
C–G, D–A, E–H, F–C 3 2
完全5度(P5)
C–F, D–G, E–A, G–C 4 3
完全4度(P4)
C–D, D–E, F–G, G–A, A–H 9 8
E–F, H–C 256 243
A–A , C–C , D–D , E–E , H–H 2 3
117A –G, C –B, D –C, G –F, F –D 3 2
584.2.2
純正律音階ピタゴラス音階では, 3度, 7度の音の周波数が, 基底音に対して, それぞれ
81 64 , 243 128
とい う比であった. この比の値が単純な有理数であれば,より調和した音となるという考え方の 元に,ピタゴラス音階の比の値に比較的近く,単純な有理数で音階を構成しようとしたのが 純正律音階である. その振動数比は以下のようになっている.音名
C D E F G A H C
振動数1 9 8 5 4 4 3 3 2 5 3 15 8 2
比の値9 8 10 9 16 15 9 8 10 9 9 8 16 15
ここで現れた比の値9 8 , 10 9 , 16 15
の比較をしてみよう.9
8 = 1.125, 1200 · log 2 ( 9
8 ) = 209.91 10
9 = 1.111, 1200 · log 2 ( 10
9 ) = 182.40 16
15 = 1.0667, 1200 · log 2 ( 16
15 ) = 111.73
となる. これにしたがって,次のような呼び名がついている:9
8 :
短全音10
9 :
長全音16
15 :
半音上に挙げた周波数比は,純正律音階の「長音階」であり,もう一つ「短音階」と呼ばれるも のがある.
音名
C D E F G A B C
振動数1 9 8 6 5 4 3 3 2 8 5 16 9 2
比の値9 8 16 15 10 9 9 8 16 15 10 9 9 8
ここで,長音階と短音階それぞれについて,3度,6度,7度の音は異なっているので, それ ぞれに出てくるものを区別するため,長3度