从单摆运动讲起
郑志军
2007年1月7日
从被强制记忆单摆的摆角必须小于5度才足够精确,到可以自己从数学方法分析出其中的道理,很多类似的例子说明提高认识需要积累和学习。但我想说的还是那句话,别人告诉你“有用”的东西要想着怎么去“用”才能体会到是否“真正有用”,暂时没用上就找机会去用,即便没用上也不要觉得别人欠你的,把目光放远一点。现行的教育模式是先学再说,而不管你将来会不会用到,这不是某一个人可以改变的现状,关键还是不断提高自己的能力才是最重要的,否则什么也不是。
以“单摆”这个最为简单的、在中学就开始接触的例子来展开我这几年来学应数、讲应数学和用应数的认识和体会,欢迎大家拍砖。姑且假定我们都有这个兴趣来探讨这个问题,并愿意想办法解决其中遇到的问题,没有兴趣的就看到这里吧。
现在就开始来看看应数是怎么教我们处理“单摆”这个课题的。不是我们自己怎么做这个课题,而是看看从这个过程中我们能够学到些什么思想和方法,我们在作自己的课题的时候有没有可以借鉴的。
第一步,建立模型。模型是基于原理、公理、定理、定义、定律、假设等基础构建出来的。
“假设”可分为几类:
像函数连续性、物质连续性均匀性等这类假设是为了数学上的方便而引进的,在需要的时候可以放弃,在用的时候可能已经隐含了,因此经常是不加交待的使用;
像守恒、最小作用假设等是不断被不同的自然现象所验证的已经上升到“原理”的高度,对于具体问题看看能不能用到是很关键的;
像单摆的摆线不伸缩、摆球可看作质点这类假设是直接和问题相关的假设,其合理性将通过实验来检验。
于此我们假定“摆线不伸缩、摆球看作质点”来建立模型。
列出相关参量:摆线长度,摆球质量,重力加速度,看作自变量的时间,看作因变量的摆角。
通过量纲分析(Buckingham Pi定理或推论)可以知道“摆球质量”是无关的量,它在建立定解问题和作实验研究中都是很有价值的发现。
根据Newton第二定律建立微分方程,并找一个初始位置确定定解条件。
至此数学模型已经建立,包括几何模型、运动模式(绕定轴运动)、数学关系等。
第二步,求解方程。方法很多,下面按我自己的思路串起来。
首先,这个问题虽然有精确解,不过其解是用椭圆函数表示的形式,实在是比较复杂难用的。从一般性的角度考虑,我们姑且忘掉它有精确解。实际上,有精确解的问题很少能留到现在,更不可能落在我们这些不幸的人的身上。但把方程无量纲化总是可以的吧,从一个问题看到一类问题。那好,我们首先做的就是把定解问题“无量纲化”。
其次,我们特别关心“小摆幅”的问题。确定“小参数”,有可能的话把问题“尺度化”,将因变量关于小参量进行展开,采用“逐次逼近法”求近似解,验证“尺度化”。在逐次逼近法的结果中发现“久期项”,Poincare等人就想了一种办法,把自变量也关于小参量进行展开,从而实现消除久期项,这就是“Poincare/PLK扰动理论”。另外一方面,把自变量关于小参数展开的每一项分别看作独立的变量,实际上就是采用不同尺度来完成,也可以消除久期项,这就是“多重尺度法”。这样给出的近似解形式简单,很多时候已经足够精确了。
再次,如果摆动不是小摆幅的,或者说怎么知道真正意义上的小摆幅,用眼睛看出来?不是,那么就要对大摆幅的情况进行分析。确定平衡点进行“稳定性分析”是基于小扰动的,对于更大的扰动情况给出相图,进行“相平面”分析,对解的性质进行分析讨论,这是介于近似解和精确解之间很有用的一个手段。
最后,计算机这么先进时代,采用数值计算,也有很大补充,可惜的是数值计算结果带有很大的局限性,它不像理论解那么容易为不懂这一行的人所采用,在外行看来很具有神秘色彩。简单单摆这个问题用有限元模拟一把不是那么必要,但如果要考虑“摆线可伸缩、摆球质量分布不均一”等更复杂的因素,数值计算还真是很管用的。对于我们这些不幸的人,不得不花去宝贵的青春在搞些无趣的调试。
第三步,对结果进行解释。“实践是检验真理的唯一标准”。可能你的假设已经抓住了影响问题的主要因素,和实验结果比还真是那么一回事,那么很好,你可以接着考虑一下有没有可以放弃的假设。那如果结果和实验相去八百里,恐怕得重新考虑被你忽略掉的影响因素。好的结果可以对一些实验中可能没有相关的手段进行观察的给出预测,也可以设计和指导工程运用。不好的结果慢慢改,首先说服自己再去说服他人。
“单摆问题”是一个简单的问题。一个简单的问题已经涉及到了可以解决很多类似的问题的方法。当然还有很多方法也还没能涉及到,所以这里补充一下就可以结束本文,但这不是完备的,恐怕要不断地积累才能“渐近于”完备。边界层问题中的奇异扰动理论的匹配法。热传导问题中的分离变量法、Fourier分析、最小二乘法。随机走动问题、多体问题、人口问题等涉及到的概率统计、波理论、失稳理论。解决同一个问题可能有很多不同的理论,解决不同问题用的是同一个方法,从不同问题中吸收不同的研究方法是有好处的。最难的部分不是数学求解,而是建立模型;最重要的部分也不是数学求解,而是怎么把问题解释清楚。把一个问题抽象成数学模型可能需要物理的直觉和经验,多了解一些经典(星系轨道、抛射问题、星系结构、布朗运动等等)的问题,多接触一些不同领域(如生物领域:阿米巴聚集、DNA分子信息、生理流动问题、生化动力学问题等等)的问题,即便没直觉也长经验了。