音律中的數學
話題:#數學# #音樂#?
小石頭/文?
簡諧震動,其產生的波也是最簡單的波稱為 簡諧波

圖中,質量為m滑塊在光滑的水平面上來回震動,t 時刻滑塊處于 y(t) 位置,根據,
牛頓第二運動定律:物體加速度的大小跟作用力成正比,跟物體的質量成反比,且 加速度的方向跟作用力的方向相同;
有,

設 滑塊在 0 ?位置 彈簧處于松弛(既沒有擠壓也沒有拉伸)狀態(tài),根據,
胡可定理:在彈性限度內,彈簧所受的拉力與形變量成正比;
又有,

其中 k > 0 稱為 彈性系數
這樣以來就得到,

令,c = √(k/m) ,則有,

這是一個齊二階線性微分方程,由 sin't = cos t 和 cos't = -sin t ?有,

知,

線性微分方程通解定理

其中 a 和 b 是任意常數。然后,根據 初始條件 y(0) 和 y'(0) 可確定,

勾股定理

知道,總是存在 A ?> 0 ?和 φ 使得,

于是有,

和角公式

最終,可得到,

這說明,最簡單的波 是一個 正弦函數,其中 A 稱為 振幅, φ 稱為 相位,c 稱為 自然頻率, c/2π 為頻率, 2π/c 為 周期。

自然界中,有些聲音聽著讓人不舒服,比如:馬路上的噪聲,而有些聲音卻讓人愉悅,比如:琴弦上發(fā)出的樂音,我們不禁會問:為什么樂音讓人愉悅呢?為了搞清楚這個問題,需要 進一步 分析 琴弦 的具體波動情況。
不妨設,長度為 L 的 琴弦 水平放置如下,

對于其上任意一點 x ,因為 琴弦是繃緊的,所以 我們 忽略 x 左右震動 產生的 橫波,只考慮 x 上下震動 產生的 縱波,可設 y(x, t) 為 x 點 在 t 時刻 的 豎直 位置,又設 琴弦的 質量是 m 并且是 質量均勻的,于是 琴弦的 密度為:

再 在琴弦上,取以 x 為起點的 長度為 h 的微元,則 該微元 的 質量就是 hρ,由于 微元 非常小,于是可認為 x 就是微元的位置,于是,根據 牛頓第二定理有,

設 T? 和 T? 分別為微元兩端的張力大小,于是 微元在 數值方向的 所受的力為,

由于 琴弦繃的足夠緊,我們設定:
琴弦上的張力大小處處相等 都是 T;
角度 ɑ? 和 ɑ? 非常小,使得 sin ɑ? ≈ tan ɑ? = ?y(x, t)/?x,sin ɑ? ≈ tan ɑ? = ?y(x+h, t)/?x;
于是有,

與前式聯立有,

等式兩邊對 微元 取極限 有,

波動方程

這是一個 二階偏微分方程,觀察發(fā)現微分變量 t 和 x 分屬于 等號兩側,這樣 如果 y(x, t) 是變量分離的,即,

則代入方程有,

于是得到,

等號兩邊是不相關的不同變量的函數,它們相等的唯一可能就是二者都是常函數,不妨設為 -k2,既有,

于是得到,

這就是前面的齊二階線性微分方程,它們的解分別是:

由于琴弦的兩頭是固定的,于是有 ψ(0) = ψ(L) = 0, 進而有,

此時 q ≠ 0 ,否則 ?ψ(x) = 0 進而 y(x, t) = 0 ,矛盾,而又有,

故只能是,

于是,

進而,

考慮到 時間為 正,故 n 取所有 正整數,這樣就得到偏微分方程的所有特解為:

又觀察到,
若 F(x, t) ?和 G(x, t) 是 偏微分方程,則 F(x, t) + G(x, t) 也是 偏微分方程 的解;
于是微分方程有解(其實也是通解),

對其中任意一點x來說,震動波為:

可見 琴弦上沒一點的震動波 都是由 頻率 分別是 f ?的正整數倍數的 正弦波 組成,而不是任意頻率的雜亂疊加,因此這才聽起來 讓人愉悅。也就是說:
悅耳的聲音是由 頻率 成整數比例的正弦波疊加而成的;☆
這些波稱為諧波。其中 n=1 的 諧波 稱為 基音 琴弦的主音,其頻率是(頻率公式),


音樂不是單獨的音,而是多種不同的音的組合,所以我們需要挑選一些音符用來構成音樂。
根據以面結論☆,除了1:1 自己和自己 絕對和諧外,諧波的最小比就是1:2了,于是??:

這樣就得到了 一條 相隔 純八度 的音列,例如:若 令 f 是 do 則 2f 就是 高音do,f/2 就是 低音do。
當然,這個音列不可能 無限延申,根據物理實驗,人可以聽到的聲音范圍 20Hz 到 20KHz,而 由 log? 20000 - log? 20 ≈ 9.96 知 這個音列最多只能有 10 個音,這遠遠不夠 音樂演奏的需求,于是我們需要對每個純八度再進行分割,分出更多的樂音來。
為此,利用更大一些的諧音比 1:3,可得音列:

對其中每一個音,可再次使用諧音比是1:2 得到一個序列:

再在每個序列中,取頻率在 f 到 2f 之間的音,得到,

這些音由于是間接上的諧波,所以組合在一起聽起依然悅耳!
當然我們也不能無限的 對 f 到 2f 進行細分,于是 需要讓上面的序列 周期重復,恰好當算到第12項時發(fā)現,

也就是說,

于是 將 312f/21? 改為 312f/21? 并視作 2f,并將前12項 按照從小到大排列??:

半音

發(fā)現 比例只有 3?/211 和 2?/3? ,而 3?/211 ≈1.068≈1.053≈2?/3?,所以,上面的音列,基本上可視為 等比序列。
這就是 五度相生律 ?的 數學原理。其中,3f/2 大概在 5/8 的 地方,所以 從 f 到 3f/2 稱為 純五度,這是五度相生律得名由來。
上面 在分割 八度 時,只利用了1:2 與 1:3 ?的諧波組合,由 f 得到:
純八度: 2f
純五度: 3f/2
可是,實際上,還有更多的 諧波組合:
純四度:4f/3
大三度:5f/4
小三度:6f/5
大六度:5f/3
小六度:8f/5
以這些音為主干,再插入5個音,讓其近似等比序列,得到??:

純律。
不管是 五度相生律 還是 純律,半音之間的比都不是 完全相等的,這導致 樂曲 轉調后 音高關系 變形,為了解決這個問題,最后干脆將 f 到 2f 絕對(對數意義下)平均等分 為 12份,即??:

這稱為 十二平均律,也就是當今使用的音律了。
這里需要注意:現在所謂,音差,等分, ... 都是 對數意義下的,實際指的是,音比,等比,...那么,為什么要 這樣叫呢?因為:由于,頻率比例表示不方便,后來人們令 log?(2f/f) =1200,這樣 log? r=100 ,于是十二平均律可表示為(令 f = 1):0,100,200,..., 1100,1200這樣就方便多了。

在實際應用中,不管采用哪種音律,音律的結構都是差不多的,都是:
先將整個音程分為八度組,然后將每個八度組再分為12個音;
所不同的是這些音對應的實際頻率略有差別,下面 以十二平均律為例,具體如下:
首先,由 人的 聽力范圍 ?20Hz 到 20KHz,可計算出,

于是,中央頻率為:

這應該 對應 中央八度 f? 到 2f? 的 中間音 r?f? = (12√2)?f? = √2f? ?,于是可以算出,

然后,就是需要標識音符,以鋼琴為例,我們用 英文字母 a, b, c, d, e, f, g ?分別表示 八度中的 前 7 個,用上標表示八度組的組號,最中間的中央八度規(guī)定為第1組,于是 整個音程 可標識為,

為了書寫方便,對低于中央八度的組,進行如下調整,
用大小字母和下標,重新表示 負上標音符,即,x?? ?→ X???;
標號0省略不寫,即,x? →x,X? → X;
調整后得到,

由上面的計算知 a1 = f? ≈ 445.5 Hz,為了計算簡單,我們規(guī)定 中央A 為:

最后,音符最終要被制造成樂器的,前面 琴弦主音 的 頻率公式 告訴我們:
當頻率升高時,弦長就要縮短;
琴弦做長簡單但是做短難,例如:
中型立式鋼琴最高音 c? 僅僅只有 5cm 長,而 c? 的頻率 440×23×(12√2)2 ≈ 3951Hz 距離 2KHz 還有很遠。
除了,工藝上高音的限制外,過高的音也比較刺耳,聽著并不好聽,因此實際 樂音八度分組 是向低音 偏移的,大概會偏移 五度左右,也就是說,低八度組的后面五個音,會被劃歸高八度組,于是得到:

這樣八度組的音符排序就變?yōu)椋?/p>
注:分別唱為 do, re, mi, fa, sol, la, si/xi,簡譜記為 1, 2, 3, 4, 5, 6, 7。

這樣 5個音符 插入如下,

這樣算下來,中央C 的 頻率為,

現在,鋼琴的實際分組如下:

注:有多種標記音符的方法,這里只介紹了其中一種。

我國早在春秋中期 時期就發(fā)現了 五度相生律,稱為三分損益法 在 《國語》、《管子》、《呂氏春秋》中 均有描述,方法如下:
設 弦長為 L(頻率 f),稱為 宮;
對 宮 “三分損一”(分三份去掉一份,原來的2/3)得到 弦長 2L/3(頻率 3f/2),稱為 徵;
對 徵 “三分益一”(分三份增加一份,原來的22/3)得到 弦長 23L/32(頻率 32f/23),稱為 商;
對 商 “三分損一” 得到 弦長 2?L/33(頻率 33f/2?),稱為 羽;
對 羽 “三分益一” 得到 弦長 2?L/3?(頻率 3?f/2?),稱為 角;
將其按照頻率大小排列,并和 前面的五度相生律原理中的序列,以及八度的7個音,比較得到:
f(宮c),3?f/211(#c),32f/23(商d),3?f/21?(#d),3?f/2?(角e),311f/21?(f),3?f/2?,3f/2(徵g),3?f/212(#g),33f/2?(羽a),31?f/21?(#a),3?f/2?(b),312f/21?≈2f(高音 宮1)
實際使用時,我國古人 將 琴弦 分為 九九八十一 份,則:
宮 ?81 份, 徵 ?81 × 2/3 = 54 份,商 ?54 × 22/3 = 72 份,羽 72 × 2/3 = 48 份, ?角 48 × 22/3 = 64 份
這樣 很簡單 就得到了 宮商角徵羽 五個音的 琴弦了。
五音畢竟有些單調,漢唐時期又將其擴充為 12 個音,分別命名為:
黃鐘(宮c),林鐘(徵g),太簇(商d),南呂(羽a),姑冼(角e),應鐘(b),蕤賓(#f);大呂(#c),夷則(#g),夾鐘(#d),無射(#a),仲呂(f)
從 ?3?f/2?(角)接著繼續(xù),
再 “三分損一” 就是 3?f/2? (應鐘b);
再 “三分益一” 就是 3?f/2? (蕤賓#f);
然后繼續(xù),
再 “三分益一” 就是 3?f/211(大呂#c);
再 “三分損一” 就是 3?f/212(夷則#g);
再 “三分益一” 就是 3?f/21?(夾鐘#d);
再 “三分損一” 就是 31?f/21?(無射#a);
再 “三分益一” 就是 311f/21?(仲呂f);
再 “三分損一” 就是 312f/21?≈2f (清黃鐘);
這樣就生成了上面的全部12個音。
比我國稍晚,古希臘的畢達哥拉斯也發(fā)現了 五度相生律,不同它的生成方法有些許區(qū)別:
開始部分和 三分損益法一樣(利用 f, 3f, 32f, ... 序列)從 c 生成到 #f 得到 7 個音,然后轉向(利用 ..., f/32, f/3, f 序列)生成 另外 的 7 個音,具體方法如下,
與前面的原理類似,利用 1:2 關系,將 ?f, f/3, f/32, ... 調整到 f 和 2f 之間,得到:

因為 21?f/3? ≈1.40f ≈ 1.42f ≈ 3?f/2? ?所以看作一個音,從而 完成序列的循環(huán)閉環(huán)。對應操作為,
對 原始琴弦 L(頻率 f) 進行 “四分損一”(即 原來的3/4)得到 弦長 3L/22 (頻率 22f/3)≈(仲呂f);
再 進行 “四分損一” 得到 得到 弦長 32L/2? (頻率 2?f/32)≈(無射#a);
再 進行 “二分益一”(即 原來的 3/2)得到 得到 弦長 33L/2? (頻率 2?f/33)≈(夾鐘#d);
再 進行 “四分損一” 得到 得到 弦長 3?L/2? (頻率 2?f/3?)≈(夷則#g);
再 進行 “二分益一” 得到 得到 弦長 3?L/2? (頻率 2?f/3?)≈(大呂#c);
再 進行 “四分損一” 得到 得到 弦長 3?L/21? (頻率 21?f/3?)≈(蕤賓#f);
這樣也就生成了12個音。
再到了明朝,律圣 朱載堉 創(chuàng)建 了 十二平均律,之后傳到 歐洲 被 巴赫 和 貝多芬 等音樂家廣泛使用,最后成了現在的主要音律。

(好了,就寫這么多吧!小石頭這時第一次在B站發(fā)表正式的專欄文章,難免有出錯的地方,歡迎各位大佬指出?。?/p>
附錄 A
第一個齊二階線性微分方程,也可以這樣解:
利用 (e?)' = e?,設 y(t) = e?? 代入方程得到 ,

由于 e?? ≠ 0 ,故 x2 + c2 = 0 ,而 c > 0,于是有 x = ±ic,這樣就 得到了 微分方程的兩個線性無關解,

線性微分方程通解定理

歐拉公式

有,

若 令 a = c? + c?, b = (c? - c?)i,則有,

附錄 B
受前面琴弦波動方程推導過程的啟發(fā),我們有:
由,

有,

,代入上式,并利用 - h →?0 ? h → 0

即得到,

附錄 C

中 找循環(huán)時,我們用的是用算的方法,但其實也可以更數學一些,實際上,我們只需要尋找 自然數 n 和 m 使得:

也就是,

即可。由于等號右邊 log?3 是無理數,所以左邊的有理數只能逼近。由 log?3 ≈ 1.5849625,我們可以將右邊 化成連分數:

這樣就得到 log?3 的 有理數逼近序列,

除了 1 對應 第0項 f 不算,選擇 19/12 是第一個對應序列中 ?第12項 ? 312f/21? 的,所以就選它了。
【END】