【来源】初中数学微课程,李尚志著黄喆编辑 (许兴华数学/选编) 我当时是班上乐队吹笛子的。虽然吹笛子只能算是业余水平,也可算是“六艺初探”的第二艺。不仅“探”音乐,还“探”出了数学问题。 笛子的构造很简单,只是一根竹子上打几个洞。笛子需要花钱买,竹子却很容易找到。我就想:能不能自己找一根竹子打几个洞做成笛子,就不用花钱买笛子了。问题是:在竹子上什么位置打洞才能吹出正确的音阶1,2,3,4,5,6,7,i ? 后来我知道,发出的音的频率大体上与孔与孔之间的距离成反比。问题就归结为:1,2,3, 4,5,6,7,i的频率各是多少?当时我们还自己制作过一个“乐器”:用一根线绷紧套在金属文具盒上,用一支短铅笔插进去,就做成一个“吉它”,可以弹出歌来。用手按在线上的不同位置来调整发声的弦的长短,就发出不同频率的声音。声音的频率与弦长成反比。实际弹奏的时候,发哪个声音应当按住哪个位置是凭经验靠耳朵听。但我仍然想一个问题:如果空弦是1,要弹出2,3,4,5,6,7,i各个音,弦长应当缩短到几分之几? 上图的电子琴的琴键中,白键的C音是C调的1,以后的白键D,E,F,G,A,B,C各音依次为C调的2,3,4,5,6,7,i.。从1往后,不论经过一个黑键还是白键都是上升一个半音,从1上升到2,3,4,5,6,7,i分别上升了2,4,5,7,9,11,12个半音,频率分别上升到1的频率的q^2,q^4,q^5,q^7,q^9,q^11,q^12倍。由1的频率可以算出其余各音的频率。任何一个琴键发出的声音都可以作为1,将这个1的频率f的1,q^2,q^4,q^5,q^7,q^9,q^11,q^12倍分别作为1,2,3,4,5,6,7,i的频率,这叫做十二平均律。这样确定的不同调的各音之间的比例完全相同,各音各调一律平等。但其中除了相差8度的音之外其余任何两个音的频率比都是无理数。 后来读到另外一本关于音乐的小册子,其中讲的1,2,3,4,5,6,7,i各个音的频率却不是无理数而是简单分数:1,9/8,5/4,4/3,3/2,5/3,15/8,2。并且解释:频率是简单分数,这样的音乐才和谐。这些频率比显然不是2^(1/12)的幂,每升高半音所升高的比例也不相同。例如从1到2升高两个半音是9/8倍,从2到3同样升高两个半音却是10/9倍,二者并不相同。十二平均律做到了各音平等,而各音之比是简单分数强调和谐。这两个方案显然不一致。哪一个正确?很让我疑惑不解。 后来读到了第三本小册子,是华罗庚在1960年代最早组织中学生数学竞赛时写的小册子《从祖冲之的圆周率谈起》。那时的数学竞赛小册子不是教怎样做竞赛题,而是开拓视野介绍相关的数学知识。华罗庚的这本小册子讲的不是音乐,也没有讲怎样计算圆周率π,而是讲怎样将无理数π用分母尽可能小的分数来逼近。虽然华罗庚讲的不是音乐,我却从中读懂了音乐。按照华罗庚小册子讲的算法,我将十二平均律算出来的无理数(2^(1/12)的幂)用分母尽可能小的分数逼近,得到的果然就是9/8,5/4,/4/3,3/2这些简单分数。 后来我知道:音乐历史上并不是先按十二平均律算出无理数再化成简单分数。而是反过来,由简单的分数3/2的各次幂产生出不同的音。相差八度(频率比为2)的音可以认为是同一个音,因此可以将3/2的每个幂除以2的某个幂使1<(3><2。以某个频率f的音作为1,得到的不同音的频率(3^m ^(m+n))f可以都限制在音f与2f之间。不难发现3^12/2^19="">1到2的等比数列,也可再调整成分母尽可能小的简单分数。 1997年我在中国科技大学开设《数学实验》课程,以中学时代关于音乐与数学的这一段思考和学习为素材,并编写了计算机程序按照所算出的频率将各个乐音播放出来,组成乐曲,成为课程中最吸引学生兴趣的精彩节目。这个节目也写进了中学新课程标准教材,又进入了我创立的以数学文化为主要内容的精品视频课程《数学大观》的课堂。当学生们在数学课堂上听到由计算机演奏出《康定情歌》的动人旋律时,他们对数学的仇恨、恐惧、误解在不知不觉中烟消云散,滋生起对数学的爱。 小学高年级就学了圆周率π,知道中国古代数学家祖冲之算出π的近似值3.1415926…在世界上领先了很多年。从那时起我就热衷于自己当一回祖冲之,将π的近似值重新算一遍。 记得当时看见一本连环画,说祖冲之勤于观察,做了一个很大的圆来量出直径与周长,根据测量数据得出π的近似值。我也就按照这个方法去算π。我不可能做一个很大的圆,只能找一个现成的圆来度量。家里喝水的杯子就是现成的圆。但真要去度量就发现问题:用硬尺子量还是用软尺子量?硬尺子量直径比较方便,量周长就有问题:圆周不是直的而是弯的,用硬尺子去量要跟着转弯,一不小心滑动了一下,量出的周长就不准确了。我母亲是做缝纫的,量体裁衣时需要量腰围胸围,因此家里有软尺子。用软尺量也有问题:用力太大就把尺子拉长了,量出的长度就偏小; 用力太小没把尺子拉紧,量出来的长度就偏大。不管怎样,用度量的方法得出的π的精确度都不高,远不能达到祖冲之的水平。 另一个方法就是利用几何知识算出π的近似值。很多书上都说祖冲之的π是由圆内接正多边形的周长算出来的。正六边形周长与直径之比为3,利用勾股定理可以依次算出正12边形、正24边形、……、正6×2n边形的周长与直径之比,让n无限增大就得到π的越来越精确的近似值。我企图按照这个方法去计算。但是,用勾股定理就需要开平方,那时没有计算机计算器,只能用四位数学用表或者用手算,n还不太大就算不下去了。而且我想:每次开平方都是近似值,利用近似值参加后面的运算,下一次开平方的时候又是近似值,每次都产生一些误差,一次又一次的误差越积累越多,我甚至怀疑祖冲之怎么能够用这个方法达到他所算出来的π的精确度。古书说,祖冲之的著作《缀术》因为“学官莫能究其深奥,故废而不理。”北宋时就已经失传了。祖冲之到底怎样算出精确度那么高的近似值,是否还是谜? 将x=1代入就可以算出arctan1,得到π。不过,将x=1代入arctan1=1-1/3+1/5-1/7+…收敛太慢,书上给了一个收敛更快的算式π/4=4arctan(1/5)-arctan(1/239) 由arctanx的计算公式分别算出arctan(1/5), arctan(1/239)就得到π/4从而得到π。 按照这个方法,我算了不到一个钟头,就达到了祖冲之的精确度。当然,祖冲之不可能用这个方法来计算π,他不可能知道计算反三角函数arctanx的公式。 很自然我想知道:计算反三角函数的这个公式怎样的来的?在此之前,我曾经问过中学老师一个问题:三角函数表是怎样算出来的? 现在计算三角函数、反三角函数很容易:用计算器就行了。我读中学的时候,计算三角函数、反三角函数都只能查表。中学生用的表叫做《四位数学用表》,包括平方表、平方根表、立方表、立方根表、正弦(余弦)表、正切(余切)表、对数表、反对数表等等。平方表我知道怎样算出来。比如要算125的平方,将125与自身相乘得到15625,写到表中去,下一次就不用再算只要查表就行了。立方表也是这样。平方根表算起来麻烦些,也有一个算法,慢慢算就行了。我不知道正弦、正切、对数、反对数怎样算,就去问中学老师。 如果现在有学生这样问中学老师,得到的回答一定是:“高考不考,问它干啥?”那时候的老师决不会这么回答。老师说:“你只要会查表就行了,不用管怎样算出来的。”老师的回答是对的,因为他的教学任务是教我们查表而不是教我们编表。我没有再问,但心里想:“我只要查表就行了,编表的人又怎么办呢?一定是查以前的人编的表。以前的人查更以前的人编的表。不过,总不能一直查到人类始祖亚当夏娃那里去,或者在中国查到开天辟地的盘古那里去,总得有第一个人编出第一份表来让以后的人查吧?第一个人是怎样计算正弦正切对数反对数的呢?”这个问题一直存在我的心里。 等等。我眼睛一亮,突然明白了,这不就是计算正弦余弦的公式吗?等式左边的sinx,cosx看起来简单,却计算不出来。等式右边看起来复杂,却可以用多项式来作为近似值,只要算加减乘除四则运算就行了,总可以慢慢算出来,就得到了正弦余弦。如果x很小,例如要计算1°的正弦sin1°,此时x的弧度值为π/180≈0.01745,可以将高次项x^3,x^5,…忽略不计,得到sinx≈x,直接用一次函数x近似代替sinx,得到sin1°≈0.01745。 相关注释请点击:微积分诗(李尚志教授著释) 小时候看电影,很崇拜电影里那些英雄可以从地面跳上房顶。后来知道他们其实跳不到那么高,但可以从上面跳下来。将跳下来的过程拍下来,倒着放映,看起来就是从下面跳上去。中学物理告诉我们,如果函数y=f(x)的自变量x是时间,y是速度,区间[a,x]与曲线所围面积S(x)就是路程。由速度f(x)求路程S(x)是定积分,比较困难。反过来,由路程S(x)求速度f(x)是求导数,很容易。也可以像拍电影那样倒过来拍:找一个函数F(x)使它求导得到的速度F’(x)=f(x)。F(x)不一定是路程函数,但一定是位置函数,末位置减初位置得到的F(b)-F(a)就一定是路程S(x)了。我是从一本小册子《从量变看物理世界》读到这个方法的,当时简直欣喜若狂,当场就求出了n次函数y = x^n下方的面积S(x) = x^(n+1)/(n+1)。后来知道这叫做微积分基本定理,是微积分最重要的定理。F(x)叫做f(x)的原函数。以上第四首诗说:测量天的高度不需要从下往上量,可以让银河从上往下量,就是说的这个思想方法。 我立刻明白,1加上无穷多个1/2,这个级数趋于无穷大,没有极限。翻回来看书的封面,上面是四个大字:数学分析。 |
|