1、XX实验中学校本课程(18讲36课时)生活中的数学第一讲:让数学帮你理财某银行为鼓励小朋友养成储蓄习惯,提供一个颇有心思的储蓄计划。参加者除可有较高年息优惠外(见附表),更可以特价换取手表一只。先不论以低价换表是否真的超值,但这种宣传方法颇具心思。手表与户口连在一起,正好意味着利息随时间递增的关系。储蓄计划优惠年息一览表每月存款(港币)1,000存期(月)每年复息利率到期存款(港币)利息(港币)到期本息金额(港币)9121518246.625%7.125%7.375%7.75%8.00%9,00012,00015,00018,00024,0002524737591,1462,1069,2521
2、2,47315,75919,14626,106 银行的宣传小册子更注明十一岁至十七岁小朋友已可开个人户口。这群“准客户”大致是接受中学教育的适龄儿童。无论有兴趣参加与否,总希望他们或早或迟懂得储蓄计划背后的数学原理。这个储蓄计划是以每月存入定额存款来计算利息,而存款期限愈长,利率则愈高。为了更有效理解表中“到期本息金额”如何计算出来,且让我们设为每月存款的金额,而则为月息利率。月息利率是由“每年复息利率”除以12而来的。譬如说,存款期限为9个月,从表中得知每年复息利率是6.625%,因此月息利率为6.625%12,即约是0.5521%。存款1个月后,到期本息金额:存款2个月后,到期本息金额:
3、存款3个月后,到期本息金额: 余此类推,存款个月后,到期本息金额应为: 为了简化这数式,设。因此,括号内的数式在数学上称为等比级数(geometric progression):首项(first term)是,公比(common ratio)亦是。利用公式,我们便可把的数式写成: 。现在就让我们运用这公式找出表中第一行的“到期本息金额”:, 代入数式, (准确至最接近的整数)表中其余的“到期本息金额”不如留给你算算,看看表中列的数字是否有错误吧。第二讲:导航的双曲线我们小时侯都曾梦想,长大以后要当上船长就好了。 在茫茫的大海上,惊涛骇浪,你能顺利地指挥着船队驶向前方吗?好,让我们的双曲线来帮助
4、你吧。它是大海的导航员。先来看一看原理。假如你站在广场上,广场的东西两侧各装有一只喇叭,并且放着欢快的音乐: 北京的京山上光芒照四方,毛主席就是那金色的太阳,多么温暖我站在广场上,听见第一只喇叭把“金色的太阳”传到耳朵后的半秒钟,又听到了第二声“金色的太阳”。由于两个喇叭离耳朵的远近不同,所以产生了听觉上的时间差。再换一个地方,是否还有这样歌声相差半秒的情形呢?实际上,只要人站的位置与两只喇叭的距离差与第一次一样就可以了 。因此可以找到很多这样的点。这些点就构成了双曲线的一支。轮船航行在海上时,它就处于人的位置。岸上有两个无线电发射台,用电波代替了喇叭里传出的音乐。轮船行驶在某一位置时,就可以
5、从接收的电波的相位差,测出轮船与电台的距离差,由此确定了一条以两个电台为焦点的双曲线。若再和另一对电台联系,可以确定出另一条双曲线,两条双曲线有一个交点,船就处于这一点上。这一切都是在一瞬间完成的,因为有很多现代化的工具来帮助我们,你明白了吗?船长们就是这样来导航的。第三讲:电冰箱温控器的调节如何使电冰箱使用时间更长中国自从1978年改革开放之后,人民生活水平日益提高,许多家庭都购买了电冰箱等家用电器。但是有许多家庭并不了解电冰箱的工作原理,更不了解电冰箱温控器的工作原理及其调节方法。人民生活水平固然提高了许多,但是现在也并不是都十分富裕。不正确的使用电冰箱势必会缩短其使用寿命,带来了不必要的
6、麻烦,同时也浪费了自然资源和财力。有一次,我们家中的一台电冰箱工作了很长时间,却一直不停机。我们吓了一跳,以为电冰箱坏了。我们给维修单位打电话咨询,但是上上下下仔细查看了整个电冰箱后,才发现只是温控器调节的不正确。这使我们认识到了冰箱温控器对于电冰箱的重要性。因此,我们来研究一下电冰箱温控器的正确使用方法,即如何使电冰箱的使用寿命更长。问题:如何正确调节电冰箱温控器,使电冰箱使用寿命更长。电冰箱制冷是靠中温低压的液态制冷剂进入蒸发器吸收热量汽化为低温低压的气态制冷剂,达到蒸发器周围降温使冰箱内部冷却的目的。压缩机、冷凝器、干燥过滤器、毛细管则是帮助并保证在蒸发器中已使用过的制冷剂回复到中温低压
7、的液体,能再一次送回蒸发器吸热汽化,实现单向连续循环制冷。蒸发器是电冰箱中唯一制冷的器件。压缩机把蒸发器出来的低温低压的汽态制冷剂经回气管由压缩机吸入气缸,被压缩为高温高压的气态进入冷凝器,把蒸发器中吸收的热量和压缩机在压缩做功时转换的热量,利用制冷剂与周围介质之间有较大的温差,通过冷凝器全部散发到空气中。制冷剂在冷凝器中因放热而被液化。这高压中温液态制冷剂经干燥过滤器吸收其中的水分,滤除其中的杂质,进入毛细管节流降压,使高压液态制冷剂降为低压而能回到蒸发器重复使用。电冰箱就是这样由各种制冷剂作工质,在封闭系统中作单向连续循环,把冰箱内热量不断的转移到箱外而达到制冷目的。电冰箱压缩机是开开停停
8、间歇工作的。电冰箱达到箱内的设定温度是通过温度控制器控制压缩机的开、停机来完成的。压缩机运转时间长,即制冷时间长,则箱内温低;反之箱温就高。温度控制器二个触点串联在压缩机电路中,当箱内温度低到某一设定温度时则温控器触点跳开,压缩机停转,暂停制冷,随后箱内温度逐渐提高,在箱内温度高到另一设定温度时则温控器触点闭合,压缩机又运转制冷如此循环。使箱内温度保持在一定范围内。电冰箱温控器中的感温包感受蒸发器的温度,当温度升高或降低时,感温元件中感温剂膨胀或收缩,使非刚性元件感温腔(波纹管或膜盒)推进或退缩,从而改变感温元件与弹簧片之间的作用力通过温控器中机械传力放大,使感温腔微小形变产生的微小位移放大,
9、控制电触点,使其闭合或断开电路。温控器指向的数字,并不表示确切的温度,而是表示控制温度高低的程度趋向,数字小表示控制在较高温度,数字大则表示控制在较低温度。我们认为,压缩机的使用寿命在很大程度上决定了电冰箱的使用寿命。而影响压缩机工作时间的因素主要有:外界温度、温控器档位、冷冻室食品量、开关冰箱门习惯。当电冰箱工作稳定后,冷冻室食品量对其影响十分微小,但不可以忽略不计。无论是在寒冷的冬季,还是在炎热的夏季,冰箱中的食品都是在不断的吸热和放热。当冰箱内冷汽散失时,食品吸热;当电冰箱制冷吸热时,食品放热。这在夏季时最为明显:当电冰箱停机时,冰箱内食品越多其停机时间越长,因为如果假设食品的平均比热容
10、不变,那么根据物理学关于热能的公式Q=MCT可知食品量与停机时间成反比。其中Q 为食品热量变化,C 为食品平均比热,T食品温度变化量。因此,冰箱内食品量的多少也是十分重要的。实际上,外界温度随季节变化而变化,温控器档位靠人工调节,冰箱内的食品量和如何开关门对于一个家庭来讲变化不会很大,因为已经形成了习惯。但是,使用时如果压缩机长时间连续工作,压缩机温度就会升高,就会造成热冲击。过多的热冲击会缩短压缩机的使用寿命。因此,我们只要调节温控器档位,使电冰箱冷冻室温度不低于某一温度,而且压缩机在非长时间连续工作的条件下(不超过一个小时),工作时间与工作、停机的时间和的比值最小(如工作10分钟,停机10
11、分钟,则比值为0.5),即压缩机的使用寿命更长,就可以使电冰箱的使用寿命更长。同时,电冰箱的耗电量也降低了。这样,一台电冰箱在使用过程中既省电,又可以延长使用寿命,当然十分经济。通过电冰箱生产厂家的电话咨询,专业技术人员肯定了我们的上述看法。于是我们就此进行了一些实验,并通过电话咨询得到了一些准确的数据。 在北京等中国北方城市,冬季的供暖由市区县的各供暖单位负责保证。政府规定,冬季居民室内的温度不得低于16摄氏度。北京市的供暖单位现在一般能够保证这个温度在18摄氏度左右,最高温可达20摄氏度,最低温绝不低于16摄氏度。因此,可以认为我国北方冬季家庭室内温度在18摄氏度左右。又因为,我国北方春秋
12、季节家庭室内温度也在18摄氏度左右,偏冷的地区依然有暖汽等供暖,甚至常年不断。所以,可以认为,我国北方春秋冬三季的家庭室内温度均在18摄氏度左右。就一般家庭而言,熟食一般现吃现买,生食一般只放几个星期。电冰箱冷冻室的食品量一般占冷冻室容积的五分之三左右,且一般变化不是很大。就是说,一般家庭的食品量对冰箱的影响基本相同。 综上所述,我们理想化的实验条件是我国北方春秋冬三季一般家庭的电冰箱。在研究这个问题时可以把食品量和室内温度作为常数来考虑。由于每次开冰箱门时都会使冰箱内食品吸热升温,所以不同人的开门习惯和速度会影响到冰箱的制冷效果。比如说:老人可能手脚不是很利落,而且拿一件东西要想一下;年轻人
13、可能一只手开门,另一只手就把东西拿出来了。为了简便计算,我们可以认为,在一个家庭中不考虑老人与青年人的分别,只考虑平均到每个家庭成员的使用效果,那么各个家庭的情况基本相同。结果是,我们在计算过程中可以忽略这一因素的影响。我们想利用家用电冰箱来进行一次实验。于是我们选用了长岭阿里斯顿 BCD 208 型电冰箱,在保持室温为18 摄氏度且食品量始终占冷冻室有效容积五分之三不变的情况下,测定了一些数据。这种电冰箱属于中等档次的家用电器,制冷效果属于一般水平。目前许多家庭使用的电冰箱的制冷效果和保温能力都与其相差无几。这些满足了本论文前面交代的实验条件,可以作为该条件下的一个例子,来解决这个问题。于是
14、我们开始了实验。实验进行了一个多星期,每组数据(既一个档位)间间隔二个小时,让电冰箱进行调节,以保证数据的准确性。这台冰箱的温控器旋钮有六个档位,分别是从零到五。第零档为停机档,既电冰箱压缩机停止工作,不会启动;第五档为速冻档,即压缩机一直启动,不会停机。因此,我们不能选第零档,因为冰箱不会制冷;不能选第五档,因为冰箱持续工作,即浪费电能,又会造成热冲击,还有可能冻坏食品。我们设工作时间与工作、停机的时间和的比值为y ,设电冰箱温控器档位为x 。则自变量x 的取值范围为(0,5)。在平面直角坐标系中描点作图,为了便于计算,且不影响结果的正确,我们在计算时把原值扩大了100倍。这样可以方便计算,
15、也能方便作图。观察散点的分布,我们认为这些点极有可能是在一条抛物线上,因此设y 关于x 的函数为。我们在后面附有实验数据列表和用绘图工具几何画板作出的函数图象。其中,表格包含五组数据,在测定时每组数据之间至少间隔两个小时,因为电冰箱需要约一个小时来调整。函数图象有一个大致的轮廓。图中的空心圆点表示描点,实心圆点表示当x 为4.5时函数图象上的点。我们分别以三组数据为一组,把五组数据分成了十组。设五组数据对应函数图象上的点从左至右依次为A、B、C、D、E,则将五组数据分组为:ABC、ABD、ABE、ACDBDE、CDE。每组可分别解出一个函数,但都有一定误差。其中,凡是包含数据组E 的组误差都十
16、分大,且不太正常。我们认为是由于压缩机升温且冷凝器温度升高散热变慢,导致电冰箱工作异常。这种可能性十分大,属于正常现象。通过电话咨询,冰箱厂家的技术人员肯定了我们的想法,并告诉我们:目前一些高级的冷凝管可以大大提高散热效率,但造价颇高,且调节温控器就可解决问题,没必要多花钱去生产。于是把数据组E 舍去,只计算前四组,又可以分为四组:ABC、ABD、ACD、BCD。以这四组数据分别解出一个函数,这四组函数中也存在误差,但是应该保留数据组A 存在误差的那一分组。因为,温控器调得过低后也会造成冰箱本身的问题。由于档位越低,要求达到的温度越高(不一定始终在设定温度以下),所以要工作的时间就比较短,但停
17、机时间缩短得更多。就是说,冰箱内的食品在较长时间内放出了热量,在较短的时间内又吸入了大致相同的热量。冰箱在这时需要适度调低要求达到的温度。这就是为什么要注意温控器的调节。就是说,由BCD 解得的函数对于点A、D 的误差属于合理误差。最后,只有BCD 这一组的不合理误差最小(此时A点误差为-0.36),最后解得的函数即为所求的函数y=f(x)。由数据组BCD 解函数: 当x = 2.574 时,函数有最小值y = 35.846;所以,温控器旋钮应指在2.574 的位置。 可是由于实验中不可能消除误差,所以应指在2、3 之间的一个位置,室温稍低时就调低一点儿,反之就高一点儿,一般家庭不用经常调,温
18、度差2到3 度不会有大影响。但是不同的电冰箱性能不同,具体的食品量在变化,外界温度也会上下浮动,每个人每一次开门造成的影响都不相同,不同品牌电冰箱温控器控制面板也不相同。所以忽略绝大多数家庭相同的因素,只须再考虑不同的电冰箱性能不同、电冰箱温控器控制面板也不相同。尽管不同的电冰箱性能不同,但是它们的工作原理相同,都是在不断的吸热、放热。就是说,它们在那个档位基本上都是最佳的。虽然电冰箱温控器控制面板不相同,但是内部旋转多少角度能调节多少温度,却是同样基本相同的。目前市场上比较多的样式主要有:“0”到“5”,“1”到“7”和“弱”、“中”、“强”。由于我们实验用的电冰箱配备的是第一种样式的温控器
19、,所以对应到其它两种样式分别是“3”、“4”档之间和“中”略偏“弱”。问题解决了,是在中国北方春秋冬三季,一般家庭家用电冰箱温控器的调节。目的是如何更经济的使用好电冰箱。答案就是上一段最后的几句话。问题虽然很小,而且用的就是解方程的方法,但却能培养我们从生活中寻找数学问题、运用数学知识的好习惯。这对于推行素质教育是一个极佳的方法,它使学生因为自己的兴趣而学习,知识也就更加牢固。另外,这个问题可以扩展到其它方面。如下水道的清理问题,你必须知道什么时候清理最合理:时间早了浪费物资,晚了又极难工作。当然牵扯的量也是相当多的。我们相信,通过我们不断的学习,我们将解决更多的生活中的问题。第四讲:赌马中的
20、数学问题 随着中国的改革开放,境外许多事物渐渐被生活在大陆的人知晓诸如赌马、六合彩等常在媒体中提及。对我们来说,了解一些原来不熟悉的东西也是必要的。其实,一些博彩游戏和古老的赌博有许多相似之处,我们可以用初等概率知识对其中的现象作一定的分析。 我们以赌马问题为例。为简便起见,假设只有两匹马参加比赛。通过对决定马匹胜负的各因素的研究以及对以往赛事胜负情况的统计分析,我们可得出两匹马各自胜出的实际概率。不失一般性,设其中一匹马胜出的实际概率为,则另一匹马胜出的实际概率为。那么,参赌者该如何下注以最大的限度确保他们能赢得钱呢? 要解决这个问题必须先弄明白庄家的赔率是如何设定的。所谓赔率,是指押注一元
21、钱于胜方所获得的总金额。举例来说,若赔率为1.65元,则如押注一元的一方恰好胜出,可得收益0.65元,加上本金,一共可得1.65元。若押注负方,则会失去所押注的1元,但不须另外再输钱。现在,我们知道了马匹胜出的实际概率,知道了庄家设定的赔率,就可以分析参赌者该如何下注。这里,设总金额为1元,并设在第一匹马上押注元,则在第二匹马上押注。至于具体押注多少,参赌者可以将总金额按该比例分配给这两匹马。于是,可得下表:马匹第一匹第二匹胜出的实际概率庄家设定赔率(元)押注(元) 如果第一匹马赢,参赌者可得到元,再减去付出的1元,参赌者的收益为元;同理,如果第二匹马赢,参赌者收益为元。考虑到两匹马胜出的实际
22、概率分别为和,参赌者的期望收益为,其中。另外,若参赌者把所有钱都押注于第一匹马时期望收益为;若参赌者把所有的钱都押注于第二匹马时,期望收益为。 自然,参赌者希望收益,这样,他们才能以一个正的概率赢利。所以要求:。 1)当,且,即当且时,不论取何值,恒大于0,且当趋向1时,趋向于极大值。实际上,当,即参赌者把钱全押注于第一匹马上时,有收益,所以参赌者应当把钱全部押注于第一匹马上。 2)当且,即当且时,收益随着的变大而变小,且当趋于0时,趋于极大值。实际上,当,即参赌者把钱全押注于第二匹马上时,有收益。所以参赌者应当把钱全押在第二匹马上。 3)当,时,为使,应满足: 。又,即。即当,且时,参赌者按
23、分配赌注可期望赢利。且当趋向于1时,收益趋于极大值。同1)情况可知,这时,参赌者应把钱全押注于第一匹马上,有收益。 4)当,且时。 这时不论赌注如何分配,参赌者的期望收益恒为负。在这情况下,参赌者介入其中是不理智的行为。 以上是参赌者在已知胜出概率及赔率时选择的策略。同样,庄家在设置赔率时,一定会对实际各匹马胜出的概率作一番认真研究,由此设定相应赔率。这样,他才有可能不赔本。由此当庄家设置一个赔率时,我们也可以反推庄家所估计的各匹马胜出的概率。例如,庄家赔率设定为15,则我们大致可以知道该马匹胜出概率大致应小于。 其实,在其它涉及赔率、押注的简单模型中,我们也可以用相应的方法进行分析。当然,这
24、只是对实际情况的一种简化。现实生活中的赌马不会仅有两匹,并且要求出各马匹实际胜出的概率是件非常困难的事,在一般情况下,只能求得近似解。第五讲: 对称自然美的基础在丰富多彩的物质世界中,对于各式各样的物体的外形,我们经常可以碰到完美匀称的例子。它们引起人们的注意,令人赏心悦目。每一朵花,每一只蝴蝶,每一枚贝壳都使人着迷;蜂房的建筑艺术,向日葵上种子的排列,以及植物茎上叶子的螺旋状颁都令我们惊讶。仔细的观察表明,对称性蕴含在上述各种事例之中,它从最简单到最复杂的表现形式,是大自然形式的基础。 花朵具有旋转对称的性征。花朵绕花心旋转适当位置,每一花瓣会占据它相邻花瓣原来的位置,花朵就自相重合。旋转时
25、达到自相重合的最小角称为元角。不同的花这个角不一样。例如梅花为72,水仙花为60。“对称”在生物学上指生物体在对应的部位上有相同的构造,分两侧对称(如蝴蝶),辐射对称(放射虫,太阳虫等)。我国最早记载了雪花是六角星形。其实,雪花形状千奇百怪,但又万变不离其宗(六角星)。既是中心对称,又是轴对称。 很多植物是螺旋对称的,即旋转某一个角度后,沿轴平移可以和自己的初始位置重合。例如树叶沿茎杆呈螺旋状排列,向四面八方伸展,不致彼此遮挡为生存所必需的阳光。这种有趣的现象叫叶序。向日葵的花序或者松球鳞片的螺线形排列是叶序的另一种表现形式。“晶体闪烁对称的光辉”,这是俄国学者费多洛夫的名言。无怪乎在古典童话
26、故事中,奇妙的宝石交织着温馨的幻境,精美绝伦,雍容华贵。在王冠上,以其熠熠光彩向世人炫耀,保持永久不衰的魅力。第六讲:对数螺线与蜘蛛网曾看过这样一则谜语:“小小诸葛亮,稳坐军中帐。摆下八卦阵,只等飞来将。”动一动脑筋,这说的是什么呢?原来是蜘蛛,后两句讲的正是蜘蛛结网捕虫的生动情形。我们知道,蜘蛛网既是它栖息的地方,也是它赖以谋生的工具。而且,结网是它的本能,并不需要学习。 你观察过蜘蛛网吗?它是用什么工具编织出这么精致的网来的呢?你心中是不是有一连串的疑问,好,下面就让我来慢慢告诉你吧。在结网的过程中,功勋最卓著的要属它的腿了。首先,它用腿从吐丝器中抽出一些丝,把它固定在墙角的一侧或者树枝上
27、。然后,再吐出一些丝,把整个蜘蛛网的轮廓勾勒出来,用一根特别的丝把这个轮廓固定住。为继续穿针引线搭好了脚手架。它每抽一根丝,沿着脚手架,小心翼翼地向前走,走到中心时,把丝拉紧,多余的部分就让它聚到中心。从中心往边上爬的过程中,在合适的地方加几根辐线,为了保持蜘蛛网的平衡,再到对面去加几根对称的辐线。一般来说,不同种类的蜘蛛引出的辐线数目不相同。丝蛛最多,42条;有带的蜘蛛次之,也有32条;角蛛最少,也达到21条。同一种蜘蛛一般不会改变辐线数。 到目前为止,蜘蛛已经用辐线把圆周分成了几部分,相临的辐线间的圆周角也是大体 相同的。现在,整个蜘蛛网看起来是一些半径等分的圆周,画曲线的工作就要开始了。
28、蜘蛛从中心开始,用一条极细的丝在那些半径上作出一条螺旋状的丝。这是一条辅助的丝。然后,它又从外圈盘旋着走向中心,同时在半径上安上最后成网的螺旋线。在这个过程中,它的脚就落在辅助线上,每到一处,就用脚把辅助线抓起来,聚成一个小球,放在半径上。这样半径上就有许多小球。从外面看上去,就是许多个小点。好了,一个完美的蜘蛛网就结成了。让我们再来好好观察一下这个小精灵的杰作:从外圈走向中心的那根螺旋线,越接近中心,每周间的距离越密,直到中断。只有中心部分的辅助线一圈密似一圈,向中心绕去。小精灵所画出的曲线,在几何中称之为对数螺线。对数螺线又叫等角螺线,因为曲线上任意一点和中心的连线与曲线上这点的切线所形成
29、的角是一个定角。大家可别小看了对数螺线:在工业生产中,把抽水机的涡轮叶片的曲面作成对数;螺线的形状,抽水就均匀;在农业生产中,把轧刀的刀口弯曲成对数螺线的形状,它就会按特定的角度来切割草料,又快又好。第七讲: 斐波那契数列斐波那契数列在自然界中的出现是如此地频繁,人们深信这不是偶然的。(1)细察下列各种花,它们的花瓣的数目具有斐波那契数:延龄草、野玫瑰、南美血根草、大波斯菊、金凤花、耧斗菜、百合花、蝴蝶花。(2)细察以下花的类似花瓣部分,它们也具有斐波那契数:紫宛、大波斯菊、雏菊。斐波那契数经常与花瓣的数目相结合:3百合和蝴蝶花5蓝花耧斗菜、金凤花、飞燕草8翠雀花13金盏草21紫宛34,55,
30、84雏菊(3)斐波那契数还可以在植物的叶、枝、茎等排列中发现。例如,在树木的枝干上选一片叶子,记其为数0,然后依序点数叶子(假定没有折损),直到到达与那息叶子正对的位置,则其间的叶子数多半是斐波那契数。叶子从一个位置到达下一个正对的位置称为一个循回。叶子在一个循回中旋转的圈数也是斐波那契数。在一个循回中叶子数与叶子旋转圈数的比称为叶序(源自希腊词,意即叶子的排列)比。多数的叶序比呈现为斐波那契数的比。(4)斐波那契数有时也称松果数,因为连续的斐波那契数会出现在松果的左和右的两种螺旋形走向的数目之中。这种情况在向日葵的种子盘中也会看到。此外,你能发现一些连续的鲁卡斯数吗?(5)菠萝是又一种可以检
31、验斐波那契数的植物。对于菠萝,我们可以去数一下它表面上六角形鳞片所形成的螺旋线数。斐波那契数列与黄金比值相继的斐波那契数的比的数列:它们交错地或大于或小于黄金比的值。该数列的极限为。这种联系暗示了无论(尤其在自然现象中)在哪里出现黄金比、黄金矩形或等角螺线,那里也就会出现斐波那契数,反之亦然。第八讲: 分数维的山峰与植物大厅的灯光暗下来,帐幕徐徐打开,银幕上出现了根据JRRTolkien的三部曲“Lord of the Rings”所改编的电影。Frodo在一个开阔的峡谷里溜达着。远处,锯齿状的冰雪覆盖着的山峰耸入云端。近处有些不知是什么种类的奇花异木在阳光下闪烁。转眼,屏幕上的奇景变成了一个
32、男巫凝视着一只水晶球,在这球体的中央出现了一个堡垒,火焰正从它的城垛里窜出来。虽然现在还很难说Frodo是否会在这样的电影里出现,但我肯定那些山峰、树木、水晶球以及火焰都会奇妙地出现在银幕上。这个成就主要将归功于Pixar公司(即从前的Lucasfilm计算机绘图实验室)所开发的软件和硬件。有家用计算机的读者都能够在计算机上作出基本类似于这些东西的图形来。由于本文篇幅所限,不能在此对水晶球和火焰作一个广泛深入的论述,但还是能够揭示产生它们的基本原理。在上面描述的假想的电影中,我们可以把摄像机移向Frodo身后的那些山峰上。人们可能从来没有见过比这些山峰更令人生畏的大片陆地了。每一个大的山峰都由
33、一些较小的山峰构成,而这些较小的山峰又由比它们更小的山峰组成,如此下去就形成了一种小山峰的无穷回归。即使一个有皮质脚的滴水嘴一样的海怪站在这样一个犬牙般的地方也会感到难受(见彩图11)。原则上,这样的一种山的图形是容易作出来的。为简便起见,我假定这山覆盖了一个三角形的地面。找出每条边的中点,用三条线段把这三个中点连起来。就把这三角形分成了四个较小三角形。用同样的办法再分这四个小三角形。这一过程不断进行,直到达到分辨率极限或计算时间极限为止。结果是得到一大堆令人感到枯燥无味的三角形。如果要使这图形变得生动一些,可以在作图过程中加进一条有关垂直方向上的规则:每当新的中点画在图上时,就使其向上或向下
34、移动某一随机量。通常这个随机数必须随三角形的逐渐变小而减少。这一规则把那些三角形变成弄皱了的山峰和褶皱(见图)。为什么这一种方法会作出那样逼真的山峰图案呢?答案在于这个过程中产生了一个分数维图形,即当图案不断放大时会显露出更多的细节的图形。分数维形态在自然界似乎是随处可见。我们可以用一个关于海岸线的例子解释分数维图形的基本概念。假设我们要用一根l000米长的测量杆测量出法国海岸线的长度,那么就得沿着海滩向前一杆一杆地进行艰难的测量,同时数出有多少个l000米。然而这样会把许多小的海湾和海岬遗漏掉,所以用这种办法测出的最后得数是不那么准确的。用一根l米长的测量杆重复这一过程,会得出一个更精确、数
35、字更大的结果。但即使如此,也有大量的小海湾和岬地被遗漏掉了。无疑,用一根l厘米长的测量杆结果就会更为精确。一般规律是,当测量杆变小时,测出的海岸线长度会增大。测出的长度与测量杆杆长之比率为一个专门值,这个值称为分数维。分数维与通常说的维不同,它往往被表达成一个分数,而不是一个整数。例如我们讨论的海岸线的维数可能就是一个3/2的分数维。可以把这样的一种形状想象成一个介于一维形状(直线)和二维形状(平面)之间的中间形状。如果海岸线比较直,其分数维就接近于1。如果海岸线很曲折,其分数维就接近于2,此时它几乎填满一个二维平面。自然界的分数维模型实际上隐含了细节的无穷回归。从计算机绘图的角度来看,无穷回
36、归是无关紧要的问题;只要景物看来是具有各级放大水平上的细节就行了。在达到屏幕分辨率的极限之前,计算机上生成的山的特征就与上述分割过程中最终所得的三角形的特征一样精细。完整的山峰绘制算法太长太复杂,无法在此作足够详细的介绍。但有一个简单的程度可以绘出Mandelbrot峰的断面,它称为MOUNTAIN。该程序体现了沿垂直轴随机移动中点这一基本早想。开始时是一条水平线段。确定其中点,使其向上或向下移动一段随机地确定的距离,然后把由此产生的两个线段再分,并使其各自中点也按此规则移动。用类似于再分三角形的方法可把这一过程不断地进行下去。程序MOUNTAIN有两个数组,叫做points和lines。其作
37、用是保持计算机屏幕上的山的轮廓。每个数组分别有两列和足够多的行(比如说2048行)以方便地调整屏幕分辨率;points的两列是坐标值,而lines的两列则是下标。每条线段定义为数组points中表明该线段终点坐标的一对位置。观察一个普通的多边形通过一连串的再分后形成山的轮廓这一过程是非常有趣的,所以程序MOUNTAIN使每一次图案的形成都处于用户的控制下。在次主循环结束时,程序询问用户是否需要另一次迭代,如果回答是肯定的,那么执行会再返回此程序的开头。 主循环的作用是把当前的点与线段的集合变成大1倍的新集合。为实现这一点,它一次一行地对数组lines进行扫描,查寻其对应点的下标并从数组poin
38、lts中检索出它们的坐标。在已知某一给定线段的两个端点坐标后,程序就可以计算出该线段的中点坐标,同时随机地改变y坐标的值。下面所列出的算法过程为程序的编制提供了充分的基础,其中变量j和k是指数组points和lines中当前正保持着再分的最新结果的那些“行”。变量pts和lns记录在进入主循环之前构成山的点和线段的数目。开始时j等于pts,k等于lns。下标i从1到。MOUNTAIN程序的这一部分在很大程度上是不言自明的。当第j点的坐标计算出来后,下标j就被存贮起来作为第i条线段的第二个点和第k条线段的第一个点。第i条线段的第一个点与其原来的一样,而第k条线段的第二个点与第i条线段原来的第二个
39、点,即带有下标b的那个点相同。当循环最终计算后,pts和lns必须分别复置为j和k的最新值。变量range是在程序的开头由用户确定各再分点在垂直方向上随机移动量的最大值。每次循环结束时,该变量就要除以2,使得这一随机移动量与线段尺寸成比例地减小。函数random(range)用于表示在0和变量range的当前值之间所选择一个随机数。 如果Frodo身后的那些山峰是令人难忘的,那么,他周围的村木和植物就更是令人难忘。它们既逼真又奇特。之所以逼真,是因为它们有与真实植物一样的分枝,而之所以奇特是因为它们不是常见的物种。大概是图形设计者有太多的参数可以任他使用,因此他禁不住要创造一些新的植物种类。这
40、些新的植物种类被叫做“嫁接”(graftal)植物,因为它们是在图形(graph)的基础上形成的,且有内在的的分数维性质。这里所谓的“内在分数维性质”,指的是用于生成植物图案的基本拓扑特征的规规则可以(但实际上没有)应用于屏幕分辨率的极限。简言之,植物的细枝条不会无限地回归成更小的枝条。一旦作为植物的基础的图形发展起来,计算机就能用大小、颜色、厚度、质地等解释植物的图形,从而把它变换成无数的令人信服的植物种类。某一给定植物所据以形成的图形是由L系统产生,这种系统是丹麦生物学家和数学家Aristid Lindenmeyer在1968年提出的一种语法类别。一个L系统实际就是一套用于从旧的字符串中推
41、导新的字符串的规则。例如,根据下列规则,用数字0和1以及符号和能够生成一系列复杂的植物: 0l0100 l11 为了弄清如何应用这些规则,我们从由单个的符号0组成的字符串开始。将箭头左边的每一个符号都用与其对应的右边的符号来代替,就可以一个接一个地得到下列的字符串: 0101 001110l00ll1010010l 00 把每个数字(0或1)当作一条线段,每个括号当作一个分支点,就可把这样的字符串变换成树一样的图形。0和1所代表线段的长度相等,其区别在于0线段的外端上要加一片叶子,而1线段上则什么也不加。 例如字符串10100的茎是由三个不在括号内的符号组成的。最下面的是1线段,中间也是1线段
42、,顶部则是0线段。两根枝条(每根均是一条0线段)从茎上长出来。第一根枝条长在第一条1线段上,第二根枝条则长在第二条1线段上。读者可以试画一下树茎最初几次生成的图案。为了使植物更逼真,对这个模型可以加上另外一些解释性的规则;例如,对于任何给定的茎(不管它是否主茎),都可以使枝条轮流地从左右两侧长出。 一个叫PLANT的由两部分组成的程序产生上述序列中的第n个字符串,然后把它表示成一个线段图。在该程序的第一阶段,PLANT将它所生成的字符串保存在被称为String A及string B的两个符号数组中。每一代植物图形轮流地占据两个数组中的一个,即某一数组中所存贮的那一代是由另一数组中所存贮的上;代
43、得来的。也不一定非要在数组中存贮符号。只要程序的代换过程是正确的,数字0,l,2和3也完全可以。 L系统规则在条件语句中体现出来;例如可以采用下面这段算法编码把StringA的第i位上的1个0变成string B中的九个新的符号: 如果stringA(i)0,那么 stringB(j)1 stringB(j+1)2 stringB(j+2)0 stringB(j+3)3 stringB(j+4)1 stringB(j+5)2 stringB(j+6)0 stringB(j+7)3 stringB(j+8)0 jj+9这里0和1代表它们自己,而2和3分别代表和,如果string A的第i个符号是
44、0,那么,程序把序列l,2,0,3,l,2,0,3,0插入数组string B中以下标j(即数组string B的尚未填入符号的第;个年置)开头的九个连续位置上。程序PLANT的第一阶段中的一个单循环就含有四个上述的条件语句,每个语句相应于可能遇到的一个符号。循环用下标j来指出当前这一代中正被处理的那个符号。循环执行的次数依用户的愿望而定。在每一次生成后,程序PLANT会询问用户是否希望另一个更长的字符串。 PIANT的第二个阶段(即绘图阶段)把第一个阶段产生的字符串变换成一个图形。它循环地执行这一过程:只要左括号(或2)没有出现,它就在一个给定方向上绘出一系列线段。当碰到某一对括号中的左括号
45、时。程序就在一个新的方向(从前一个方向反时针转45)上绘出后面的线段。当对应的右括号出现后,这一过程就终止。这时画出一片叶子,它的形状和颜色都留给读者去想象。第二个左括号的出现使该程序又重复进行。只是现在的方向是顺时针45。其他的工作都是自动进行的。 PIANT用了一个随被绘出的植物的复杂性而定的比例因数。例如,第n代植物的高度大约为2n条线段,如果屏幕的高是200个像元,那么每根线段就必须短于2002n雄心勃勃的读者们无疑会尝试生成语法、枝条角度及叶片形状等方面的新花样。如果具有这些新花样的图案在同一屏幕上生成,植物和树木的风景就会出现了(当然不是很逼真的)。 Pixar绘图计算机的心脏是一
46、个有24兆字节,20002000像元的存贮器,其分辨率对大多数应用是足够的。此外,每个像元由48个存贮位表示,足够存贮色采和透明度方面的信息。Pixar绘图计算机的大容量存贮器由四个高速并行完全可编程序的处理机操纵。它们每秒钟能执行约4000万条指令,其速度比普通的计算机大几个数量级。显示装置与存贮器问的数据交换速度可达每秒48亿个字节。 Pixar绘图计算机预定用于医学成像、遥感、工程设计及动画片制作这些领域中。也许还会用来制作我在本文开头所描述的假想电影。第九讲: 蜂房中的数学蜜蜂是勤劳的,它们酿造出了最甜的蜜;蜜蜂是聪明的,它们会分工合作,还会用舞蹈的形式告诉同伴:哪里有花源,数量怎么样。实际上,不仅如此,蜜蜂还是出色的建筑师。它