一般而言琴弦长度与其所发出的频率呈反比。
要使这些不同的音形成音乐,需要定义出相对音高的概念。
目前世界上最通用的音律体系为十二平均律。

十二平均律

音程是两个音之间的频率差距,可以使用音数描述。

频率之比为1:2的两个音之间的音程为纯八度。

十二平均律描述了两个单音间的相对音高关系,它将一个纯八度划分为了12份,每一份为一个半音,两份为一个全音。

十二平均律中相邻的两个音之间的音数为0.5。

从基准音f0f_0开始,比它高纯八度的音为2f02f_0,其中划分为12份,则包含f0f_02f02f_0音在内总共具有13个音,每相邻两个音之间的频率之比应当相同,呈现出等比数列的规律。若使用fnf_n按顺序表示其中的每个音,且f12=2f0f_{12}=2f_0

fn=aqnf_n=aq^{n},分别带入当n=0n=0n=12n=12时的情况,则有

f0=af12=f0q12=2f0q=2112f_0=a \\ f_{12} = f_0 q^{12} = 2 f_0 \Rightarrow q=2^\frac{1}{12}

fn=2n12f0f_n=2^\frac{n}{12}f_0

若使用音数作为单位描述上述通项公式,则有2t/6f02^{t/6}f_0

在12平均律中的12种音程关系人们为它们起名如下:

相差音数(t) 音程名称
0.5 小二度
1 大二度
1.5 小三度(增二度)
2 大三度
2.5 纯四度
3 三全音
3.5 纯五度
4 小六度
4.5 大六度(减七度)
5 小七度
5.5 大七度
6 纯八度

五度相生律

最早人们发现长度比为1:2的弦可以发出非常协调的声音。

我们将原弦长LL发出的频率记做ff

用手指按在1/2处,可以形成两段弦长为12L\frac{1}{2}L,发出2f2f频率的声音,听起来与f非常协调,这样就形成了纯八度音程。

用手指按在1/3处,较长一段形成的弦长为23L\frac{2}{3}L,发出32f\frac{3}{2}f频率的声音,听起来与ff非常协调。

用手指按在1/4处,较长一段形成的弦长为34L\frac{3}{4}L,发出43f\frac{4}{3}f频率的声音,听起来没有先前的那么协调,但也不错。

使用同样的方式将手指继续按在1/x处,较长一段形成弦长为x1xL\frac{x-1}{x}L,发出xx1f\frac{x}{x-1}f频率的声音,听起来变得越来越不协调。

不过此时人们已经获得了最协调的三种弦长比分别为 12\frac{1}{2},23\frac{2}{3},34\frac{3}{4},这分别来源于三种分割点。

为了继续获得更加协调的弦长比,那么我们可以继续以这三种最协调的分割比例为基础继续对较长一段弦进行继续分割下去。

若使用12×12\frac{1}{2}\times \frac{1}{2}进行分割,形成频率为4f4f,则分割出的是2倍的纯八度音程,没有出现新的音程关系。

若使用23×23\frac{2}{3} \times \frac{2}{3}进行分割,形成94f\frac{9}{4}f的频率,则94f\frac{9}{4}f32f\frac{3}{2}f的协调程度和32\frac{3}{2}ff的协调程度是相同的。

所以使用23\frac{2}{3}的比例不断分割可以形成一些新的较为协调的频率。

若使用23\frac{2}{3}分割nn次,则可以形成弦长比(23)nL(\frac{2}{3})^nL,形成频率为(32)nf(\frac{3}{2})^nf,于是可以得到如下的频率序列表:

n 频率a 近似倍率 所在纯八度频率区间 归一化倍率b 归一化倍率的小数形式
1 3f/2 1.5 [f,2f] 3/2 1.5
2 9f/4 2.25 [2f,4f] 9/8 1.125
3 27f/8 3.375 [2f,4f] 27/16 1.6875
4 81f/16 5.0625 [4f,8f] 81/64 1.265625
5 243f/32 7.59375 [4f,8f] 243/128 1.8984375

但是这些频率并不在同一个纯八度音程中,所以我们还需要将这些比例归一化到同一个八度音程中,一种最简单的形式就是使用倍率频率除当前纯八度的频率区间的最低频率。

倍率a=(32)na=(\frac{3}{2})^n

归一化倍率b=a2log2a=(32)n2log2(32)nb=\frac{a}{2^{log_2 a}} = \frac{(\frac{3}{2})^n}{2^{\lfloor {log_2 {(\frac{3}{2})^n} \rfloor }}}

可以使用python代码一次性计算n取前五个倍率

1
2
>>> list(map(lambda n:((3/2)**n)/(2**(floor(log((3/2)**n,2)))), range(1,6)))
[1.5, 1.125, 1.6875, 1.265625, 1.8984375]

将新得到的五个倍率和自身11和自身高纯八度的22以及43\frac{4}{3}从小到大排列。

得到以下倍率列表,这可以总计形成8个音,具有7对两两相邻的音。

1
2
>>> sorted(list(map(lambda n:((3/2)**n)/(2**(floor(log((3/2)**n,2)))), range(1,6)))+[1,2,4/3])
[1, 1.125, 1.265625, 1.3333333333333333, 1.5, 1.6875, 1.8984375, 2]

若将一个纯八度直接按理想情况平均划分,则可以得到以下倍率列表

1
2
>>> list(map(lambda x:1+x/7,range(0,8)))
[1.0, 1.1428571428571428, 1.2857142857142856, 1.4285714285714286, 1.5714285714285714, 1.7142857142857144, 1.8571428571428572, 2.0]

粗略观察以下图表可以看出,实际上不断通过32\frac{3}{2}划分得到的频率比,与理想的按平均倍率w划分的误差并不是很大。

由于ff32f\frac{3}{2}f是纯五度的关系,故这种定义音律的方式称为五度相生律

在世界历史上有多个民族都独立地发明了五度相生律,一般认为最早由古希腊哲学家毕达哥拉斯提出,故又称为毕达哥拉斯律

五声音阶

我们将五度相生律中的n取前4个倍率,和倍率1组合,再排序后可以得到5个音:

1
2
sorted(list(map(lambda n:((3/2)**n)/(2**(floor(log((3/2)**n,2)))), range(1,5)))+[1])
[1, 1.125, 1.265625, 1.5, 1.6875]

这五个音就是中国古代传统的五声音阶,宫(do)、商(re)、角(mi)、徵(sol)、羽(la)

音名分别为

C,D,E,G,AC,D,E,G,A

故中国古代的五声音阶也是由五度相生律推导而来,只不过古代并没有八度,五度的音程概念,古人将这种方法叫做三份损益法

三分损益法表述为:九九八十一以为宫。三分去一,五十四以为徵。三分益一,七十二以为商。三分去一,四十八以为羽。三分益一,六十四以为角。

纯律

TODO

和弦

和弦是指组合在一起的两个或更多不同音高的音。在欧洲古典音乐及受其影响的音乐风格里,更多时候是指三个或以上的音高组合。和弦的组成音,可分开演奏,亦可同时演奏。分开演奏的,我们称为分解和弦。

和弦的结构类型很多,如果按照组成音的数量来区分,和弦可以分为三和弦、七和弦及九和弦等。三和弦是由三个音组成,七和弦是由四个音组成,九和弦则由五个音组成。如果按照和弦组成音之间的音程结构来分类,又可分为大和弦、小和弦、增和弦和减和弦四种形态。

三和弦

以任意一个音n1为基准,称为根音,根音向上三度得到n2,根音向上五度得到n3,这三个音的和弦称为三和弦。三和弦可以再分为大三和弦、小三和弦、增三和弦和减三和弦。这些三和弦的构成如下表所示:

名称 [n1,n2] [n1,n3]
大三和弦 大三度 纯五度
小三和弦 小三度 纯五度
增三和弦 大三度 增五度
减三和弦 小三度 减五度

七和弦

七和弦比三和弦多加一个音n4,它于n1的音程为七度。七和弦又分为:大小七和弦、大七和弦、小七和弦、小大七和弦、增七和弦、减七和弦和半减七和弦一共7种。

九和弦