【其它】音階中的數學

1. 動機

  近期,六歲的女兒在學鋼琴,做爲監工和陪練,這對我倒是個不大不小的困難。由於陪練並非站在一旁嚷嚷着「好好練琴」就行,共同窗習、一塊兒交流纔可以讓小孩有持續的熱情。爲了把這件事變得有趣和高效,我打算從零學一點音樂,首先至少能看懂少兒鋼琴的書吧。想一想咱們這一代的農村學校,連個音樂老師都沒有,更不談什麼音樂知識,能接受到的音樂「薰陶」恐怕也只有大街小巷的那些流行歌曲了。這種粗糲的音樂審美也許已經沒法提升,但「學習基礎樂理」這樣的硬任務應該仍是能夠完成的。html

  好久以前就據說音樂和數學有着千絲萬縷的聯繫,我早就想一睹音樂中的數學之美,但拿起各類正規樂理教材後,內心的落差仍是很大的。不只沒有數學教材的那種乾淨利落,甚至也沒有計算機教材的按部就班,整個就是雜亂概念的堆砌。概念沒有清晰的定義、沒有引入的緣由,概念間複雜的關係更是說不清楚道不明,名詞老是硬生生地放在那裏,你記就是了。也許是由於多年的理工科工做習慣,這樣的書我真是一頁也看不下去,不是看不懂,而是看得不得勁。但靜下心來想一想,我須要的只是對概念來源的一個解釋,哪怕是一個錯誤的解釋,只要我以爲合理就行。app

  固然我也知道,音樂自己仍是感性的東西,它變換莫測、風格多變,甚至連好壞都沒有統一的標準,想用一套理論就把它徹底解釋確定是不現實的。但萬事萬物都都會有一些基本規律存在,人類文明也正是在概括總結中積累起來的,即便是藝術、文學類的創做,也都要知足基本的美學規律。音樂做爲一個普世的文化活動,通過上千年的流傳和演進,在不一樣地域的文明中都創建起了理論體系。但使人驚奇是,在音律的基本要素上,各類體系都殊路同歸,具備很是相似的構成。現在,音律的語言已經趨於一致,人們已經有了統一的描述方式,而且在此之上繼續探索、總結……函數

  音律中跟數學關係最直接、最久遠的當屬音階系統了,早在古希臘時期,畢達哥拉斯學派就發現,頻率呈簡單整數比的兩個音聽起來很是協和,而且幾乎全世界的音階系統,都是基於這樣一個簡單的事實創建起來的。下面開始,我就試圖用本身淺薄的數學知識來解釋一下這套體系,固然其中以數學的闡述爲主,而有意淡化樂理的瑣碎概念和曲譜的基本知識,那些在任何一本樂理書上都有詳盡的介紹。最後我還想說,對於樂器演奏技法、甚至音樂理論學習,整理這些東西並沒有大用,用這種思惟去學習音樂也必將學無所成。但對於一個理科生,只是想要一個解釋而已,這不算過度吧,先讓我痛快了再說!工具

2. 關於聲音

  首先嚴格說,聲音就是一段聲波,它是物體震動從而帶動的空氣震動。固然,雜亂無章的震動並不能對聽覺提供可識別的特徵信息,具備明顯特徵的聲音在一段時間內應當(或近似)呈現必定的週期性,所謂週期性就是震動以必定頻率重複出現。有三個特徵能夠完整刻畫一段週期聲波,首先是聲波的震動週期,它通常用頻率來表示,在音樂裏還叫音高,人耳能聽到的聲音頻率大概是\(20\sim 20000Hz\)。第二個是聲波的形狀,它構成了每段聲音的獨特感受,音樂上也叫音色,不一樣樂器發出的聲音都很容易辨認,就是由於它們的音色不一樣。第三個就是聲音震動幅度的大小,它直接關係到聲音的大小,也就是咱們日常說的音量學習

  教材上還告訴咱們,每一個週期聲波都是有一系列頻率爲\(f,2f,3f,\cdots\)的正弦波(振幅不一樣)疊加而成的。但我以爲這個說法並不嚴謹,雖然傅里葉級數告訴咱們:「知足必定條件的周期函數能夠有惟一的傅里葉分解」,但這並不能說明:週期聲波自然地就是由那些正弦波疊加而成的。傅里葉級數只是數學工具,它是我的工概念,用來幫助人們分解聲音以便更好的分析。就比如物理上常常把運動按正交軸進行分解同樣,這是用數學工具來分析運動,但並非說:運動自然地就是由兩個方向的運動組成。spa

  正弦波也叫簡諧波,它是由簡諧振動產生的聲波,而簡諧振動現實中很是廣泛的一種運動。所謂簡諧振動能夠這樣描述:它在中心兩側運動,加速度(或所受協力)始終指向中心,並與位移\(y\)成正比。彈簧的震動就是典型的簡諧振動,其實現實中大部分物體的自身震動都是由若干簡諧振動組成的,這也說明了爲何週期聲波均可以很好地進行傅里葉分解。在音樂裏,簡諧波也叫純音,純音疊加而成的複合音,若是仍然有明顯的週期,則叫單音,不然叫拍音。單音的傅里葉分解中,週期最大的純音叫作這個單音的基音,其它純音則叫泛音設計

  到這裏還有最後一個問題:爲何簡諧波就是正(餘)弦波,僅僅由於它好看嗎?我只得認可,書本里學的知識已經所有忘記了,如今只好本身再推算一遍。一種直接的方法就是根據簡諧振動的特色,能夠獲得式(1)的常微分方程,從而解得\(y(t)\)是正弦函數。還有一種間接的證實方法,就是觀察如圖的勻速圓周運動。考察運動點\(P\)以及其加速度\(a\)在\(y\)軸的投影,顯然它們成正比關係,具體說就是\(a_y(t)=\dfrac{a}{R}y(t)\)。也就是說簡諧振動正是勻速圓周運動在一維空間的投影,設它的角速度是\(\omega\)(逆時針方向),它的波形天然就是\(R\sin\,\omega t\)。3d

\[y''(t)=ky(t)\tag{1}\]htm

3. 十二平均律

  單絲不成線,單音不成樂,一首動聽的音樂固然要有不一樣音高的單音,才能表達出情緒的波動。咱們也看到,任何一種樂器都能發出多種音高,它們交叉、重疊、依次推動,造成了很是有節奏的韻律。爲了能用不一樣的樂器、在不一樣的時間和場所彈奏一樣一首曲子,須要對每一個音做明肯定義,這就要事先選定一組單音作爲標準,這個組合也被稱爲音階。每種樂器使用的音階不盡相同,但挑選時都遵循着相似的準則,這裏咱們先跳過漫長的歷史過程,來看看如何合理地構建一個通用的音階。blog

  首先咱們知道一個常識:人耳對音高的感知知足對數函數,也就是說音高分別爲\(F_a,F_b\)的聲音,咱們感受到的「聲高」比(我捏造的詞)則是\(\dfrac{L_a}{L_b}=\dfrac{\ln F_a}{\ln F_b}\)。設音階中單音的聲高和音高分別是\(L_i,F_i\),則容易有關係式(2)成立(\(C\)爲某常數)。另外,咱們但願音階裏的「聲高」是逐漸遞增的,也就是說\(L_1,L_2,\cdots,L_n\)成等差數列。由式(2)易知\(L_a-L_b=C\ln F_a/F_b\),從而\(F_1,F_2,\cdots,F_n\)成等比數列。

\[\dfrac{L_1}{\ln F_1}=\dfrac{L_2}{\ln F_2}=\cdots=\dfrac{L_n}{\ln F_n}\;\Rightarrow\;L_i=C\ln F_i\tag{2}\]

  把音階設計成等比數列有不少好處,首先是獲得了一套完整、遞進的聲高系統,它能知足各類場合的需求。還有就是等比音高能夠很方便地「轉調」,所謂轉調就是把樂曲中的每一個音都同時升高或下降相同的聲高,下面的調式中會碰到這樣的狀況。總之這是一個不錯的開始,只要再添加少量限制,就能夠肯定這套音階了。音樂中的不一樣單音扮演着不一樣的角色,它們須要配合使用才能體現出流暢或變化,所謂流暢就是兩個單音出現重合或疊加時,並不顯得突兀,而是顯得十分「協和」。

  早在古希臘時期人們就發現,頻率成簡單整數比的兩個音在一塊兒更加協和,尤爲是成倍數關係的兩個音疊加時,音高並無變化。這個其實不難解釋,兩個週期比爲\(m:n\)的兩個音重合時,週期變爲最小公倍數\([m,n]\),當\(m,n\)都不大時,重合音的音高也沒有忽然下降,而且都是原來音高的倍數。既然倍數關係的音高是最協和的,咱們就必須把最簡單的倍數\(2:1\)添加到音階中,任意選定一個「基礎音」後,它的\(2^k,2^{-k}\)倍音也必須出如今音階中,這就獲得了音階序列\(\cdots,\,2^{-2}F,\,2^{-1}F,\,F,\,2F,\,2^2F,\,\cdots\)。

  可是成倍數的單音又太過協和了,徹底體現不出變化,樂曲會顯得很空洞。因此須要在\([F,2F]\)間再添加一些音(其它區間相似),固然添加不能忘了等比關係,添加後的音應當是式(3)的序列。這時只要肯定整數\(n\)便可,而這隻需再添加一個音。全部非倍數的整數比中最簡單的就是\(2:3\),從而把\(\dfrac{3}{2}F\)添加進序列(3)是毫無爭議的,也就是尋找\(m\)使得\(2^{\frac{m}{n}}=\dfrac{3}{2}\)。

\[2^0F=F,\:2^{\frac{1}{n}}F,\:2^{\frac{2}{n}}F,\:\cdots,\:2^{\frac{n-1}{n}}F,\:2^{\frac{n}{n}}F=2F\tag{3}\]

  但顯然\(\log_2\dfrac{3}{2}=0.5849625\cdots\)是無理數,不能表示成\(\dfrac{m}{n}\)的形式,這時咱們只能稍做妥協,取一個\(\log_2\dfrac{3}{2}\)的近似分數。到了這一步,天然地就想到了實數的連分數表示,首先算得\(\log_2\dfrac{3}{2}\)的簡單連分數是\([1,1,2,2,3,1,5,2,23,\cdots]\),前幾個近似分數分別是\(1,\dfrac{1}{2},\dfrac{3}{5},\dfrac{7}{12},\dfrac{24}{41},\dfrac{31}{53},\cdots\)。第一個達到\(0.1%%\)精度的(包括第一類近似逼近)是\(\dfrac{7}{12}\),\(12\)大小合適,而且在古代是個頗有地位的數(由於約數多),不選它簡直天理難容了。

\[\log_2\dfrac{3}{2}=\cfrac{1}{1+\cfrac{1}{1+\cfrac{1}{2+\cfrac{1}{2+\cdots}}}}\approx\dfrac{7}{12}\tag{4}\]

  以此創建音階的方法就叫作十二平均律,它誕生於至關久遠的中國古代,16世紀由明朝的朱載堉發展成完整的理論,而後在16世紀末傳播到歐洲並在17世紀得以普及。十二平均律是目前通用的音律體系,後面的音程、調式、調性、和聲、和絃理論都是創建在此之上的,只不過這些理論幾乎都是在歐洲發展起來的。

4. 音程與協和性

  在音律中有時很是關心兩個單音之間的「距離」,它顯然能夠用單音的頻率比來度量,這個比率在音樂中也被叫作音程。因爲十二平均律獲得音階造成完整的等比數列,從而能夠用相鄰單音的頻率比做爲單位來「數」出音程大小,這個單位叫作一個「半音」,兩個半音則叫一個「全音」,這樣的音程表示法也叫音數。至於爲何把半音做爲一個單位,我想大概是由於許多音階中,兩個半音的距離是比較主要的音程,這個在下面的調式中將詳細討論。另外,一個半音還被分爲100個音分,它能夠用來度量更小精度的音程。

  因爲\(F\)與\(2F\)的單音極度類似,音階中就好像只有12個音循環出現(只是音高加倍),所以咱們把討論的重點放在一個週期中。在正式給出這些音的名稱以前,這裏先用數字\(0\sim 12\)表明它們,下面要討論的是這13個單音之間的協和程度。這屬於樂理中的和聲學部分,那裏把音程的協和程度分紅了五種:極徹底協和、徹底協和、不徹底協和、不協和、極不協和。首先咱們知道,音\(0\)與音\(12\)以及自身是很是協和的,它們也叫作極徹底協和音程

  而後咱們還知道,音\(0\)與音\(7\)的頻率比近似爲\(2:3\),它們的協和程度也很高,從而被叫作徹底協和音程。接下來,音\(7\)的\(\dfrac{3}{2}\)倍音出如今了下一個循環中,熟知取模運算的你必定知道,它就是音\(2\)的2倍音。從而易知音\(2\)與音\(7\)的近似頻率比爲\(\dfrac{4}{3}\),它們也是徹底協和的。換句話說,任何一個音都有上下兩個與它徹底協和的音,這個協和關係能夠像下圖那樣造成一個環鏈(由於7與12互質)。

  歷史上,早期的音階其實就是用上圖的環鏈構建的,但只是使用了環中的\(5\)-\(0\)-\(7\)-\(2\)-\(9\)-\(4\)-\(11\)一段共七個音。因爲音程\(\dfrac{3}{2}\)也叫純五度(下面再介紹),故這個方法也叫五度相生律。但不難發現,五度相生律中會出現分母很大的分數,崇尚小整數比的古人利用小質數\(2,3,5\)構建出了它們的近似分數(見下表,不包括括號內的音),這個生成法也叫純率。五度相生律更注重單音之間的協和性,而純率更關注全部單音與\(F\)之間的協和性,在沒法協調的狀況下,十二平均律則是一個折中的方法。而且十二平均律的平滑性和完整性,也使得它成爲了後來的標準。五度相生律和純率被長期使用的期間,七個音的音名也被約定俗成地繼承了下來(見下表,括號中是它們的唱名),後來添加進來的五個音只好用升降號來表示。

十二平均律  五度相生律  純率  音名(唱名)  音程 
 \(1\)  \(1\)  \(1\)  C (Do)  純一度
 \(2^\frac{1}{12}\)  \((256/243)\)  \((17/16)\)  C# / Db  小二度
 \(2^\frac{2}{12}\)  \(9/8\)  \(9/8\)  D (Re)  大二度
 \(2^\frac{3}{12}\)  \((32/27)\)  \((6/5)\)  D# / Eb  小三度
 \(2^\frac{4}{12}\)  \(81/64\)  \(5/4\)  E (Mi)  大三度
 \(2^\frac{5}{12}\)  \(4/3\)  \(4/3\)  F (Fa)  純四度
 \(2^\frac{6}{12}\)  \((729/512)\)  \((7/5)\)  F# / Gb  增四 / 減五
 \(2^\frac{7}{12}\)  \(3/2\)  \(3/2\)  G (So)  純五度
 \(2^\frac{8}{12}\)  \((128/81)\)  \((8/5)\)  G# / Ab  小六度
 \(2^\frac{9}{12}\)  \(27/16\)  \(5/3\)  A (La)  大六度
 \(2^\frac{10}{12}\)  \((16/9)\)  \((9/5)\)  A# / Bb  小七度
 \(2^\frac{11}{12}\)  \(243/64\)  \(17/8\)  B (Si)  大七度
 \(2\)  \(2\)  \(2\)  C (Do)  純八度

  伴隨着七個單音,音程也有對應的名字,單音到自身的音程叫一度,而後依次增一度,到2倍音程叫八度。可見度數並非嚴格的定義,而是一個經驗性的命名,從我有限的資料中並未找到它的來源,如下純屬瞎掰。因爲一度、四度、五度、八度有很強的協和性和肯定的頻率,它們也被叫作純音。2、3、6、七度前面都補充了一個降半音的音,爲區別開來,把原來的四個叫大X度,新增的叫小X度。這十三個度數之間近似相差半個音,之因此說近似,是由於非平均律下,這個間距就不是半個音了。因此當一個音要增、減半個音(一個音)時,還特意取名爲增、減音程倍增、減音程),下表總結了音程名稱的變化規律,左右相鄰的兩個音程相差半個音。 

倍減音程 減音程 純音程 增音程 倍增音程
小音程 大音程

  關於其它音程的協和性,通常把三度、六度當作是不徹底協和的,大2、小七當作是不協和的,小2、大七當作是極不協和的,增四/減五則表現極不穩定。其緣由通常也歸結爲整數比的「複雜」程度,但如何定義這個複雜程度則莫衷一是,各類解釋都不能讓人信服。若是小整數比的理論成立,那這些協和性極可能只對純律有效。在十二平均律下,每一個頻率都有許多近似分數,如何選擇表明分數是個難題,如下只是個人推測。

  對於音程爲\(x>1\)的兩個音,設週期分別爲\(T,xT\),它們的和聲不必定有固定週期,只有一些大大小小的近似週期。一個近似週期應當同時約等於\(T,xT\)的倍數,設它們是\(mT,nxT\),要想週期比較明顯,\(|m-nx|T\)應當足夠小。最小的近似週期應當知足:\(m,n\)儘可能小而\(|m-nx|\)也能足夠小,回顧連分數的知識可知,這等價於求實數\(x\)的第二類最佳逼近\(\dfrac{m}{n}\)。純率選取的分數其實就是達到必定精度的第二類逼近,而後\(n\)越小的協和性越好,這與感受基本吻合。另外我還有一個猜測,那種有理逼近比較慢的音程,因爲近似精度低且兩個近似週期之間相差小,和聲會顯得不協和或不穩定。好比典型的增四/減五音,它的連分數是\([1;2,2,2,2,2\cdots]\),因爲連分數的逼近速度慢,它的和聲就很不穩定。

5. 調式和調性

  以上是關於音階的基礎理論,在實際的曲調中每每只選取少許的音組成音階,而且在不一樣時代、不一樣地區造成了各類風格的音階。這裏講的「風格」其實就是音階的「調」,它關係到音樂的情感色彩和情緒高低。一個調(音階)包括選定的主音以及其它音的音程,它們分別稱爲調性調式

  先來看調式,它是指圍繞某個主音)而生成的音階,對於一種調式,其它音的個數以及相對主音的音程是肯定的。在不一樣的歷史時期和地區,產生了風格迥異的調式,這裏只拿天然大(小)調爲例,介紹調式的構成。天然大(小)調就是咱們熟悉的七音音階,除了主音外先加入上下五度的兩個音:屬音V)和下屬音),而後是位於主音、屬音中間的中音)和位於主音(高八度)、下屬音中間的下中音(Ⅵ),最後再加上與主音相鄰的上主音)和下主音)(小調中叫導音)。通常來講,天然大調錶現出陽光明朗的風格,而天然小調則陰暗憂傷一點。

  在具體音程上,首先兩個屬音的位置沒有疑問,以純五度爲準。但主音和屬音之間相差\(3.5\)個半音,中音的位置有兩種選擇,天然大調選擇\(2+1.5\)方式,而天然小調選擇\(1.5+2\)的方式,這種不一樣繼而還會影響上(下)主音的位置。最終,天然大調的音程從主音開始依次是「全全半全全全半」,而天然小調則是「全半全全半全全」。若是把音程放到一個八度閉環中,不難發現大、小調實際上是「同構」的,只不過平展後有些音相差八度而已。

  調性比較簡單,主音是什麼,通常就叫什麼調,好比C調、G調。因爲在平均律中有同音異名的現象,同一個調可能有兩個名字,好比F#調和Gb調就是相同的。但在非平均律下,它們會有細微的差異,這個咱們很少討論。還有一個問題咱們一直沒有解決,就是這些音的頻率到底是多少?歷史上,標準音的標準一直在變,直到1936年,美國標準委員會纔將小字一組的A音(a1)定爲440Hz,而與它同一組的C音稱爲中央C

  有了調式和調性後,音樂的調也就肯定了,好比C大調、A小調等。下圖將12個音按照五度音程串成一個圓環,由前面的討論可知,圓環中任何7個相鄰的音都正好構成一個天然大(小)調。7個相鄰音中的(順時針)第2個是大調的調性音,而第4個則是小調的調性音,利用這個圖能夠快速肯定不一樣的音調。至此,咱們就算整理完音階中的數學解釋了,但對於樂理知識,這些只能算開篇和序言,但願我這種另類的開篇能夠幫助到你。

 

  博客總目錄這裏

 


【前序學科】 實數系統(連分數)

【參考資料】

[1]  《寫給理工科看的樂理》,博客園Devymex

[2]  知乎: www.zhihu.com/question/20612595; www.zhihu.com/question/28518092

相關文章
相關標籤/搜索