词条 | 计算力学的数值方法 |
释义 | § 计算力学的数值方法 § 正文 力学现象的数学模拟,常常归结为求解常微分方程、偏微分方程、积分方程、或代数方程。求解这些方程的方法有两类:一类是求分析解,即以公式表示的解;另一类是求数值解,即以成批数字表示的解。很多力学问题相当复杂,特别是复杂的偏微分方程组,一般难以得出它们的分析解,而用数值方法求解则运算步骤繁复,耗用人力很多,因此在电子计算机出现以前,非不得已不用。20世纪50年代以来,出现了配有现代程序设计语言的通用数字计算机。计算机的快速运算和大存贮量,使解复杂的力学问题成为可能。三十多年来,随着计算机的改进,数值方法得到广泛的应用和很大的发展;主要是考虑算得更快、更准、省钱,并为原先不能算的问题构造算法。 主要数值方法 数值方法很多,求解偏微分方程数值解,以有限差分方法和有限元法使用最广;此外,还有变分方法、直线法、特征线法和谱方法,等等。这些方法的实质绝大多数是将偏微分方程问题化成代数问题,然后再用计算机求未知函数的数值解。下面简要介绍有限差分方法和有限元法。 有限差分方法 具有简单、灵活和通用性强等特点。用差分方法求数值解时,须先将自变量的定义域“离散化”,即只企图算自变量定义域中有限个点的未知函数的近似值。如果自变量只有一个,则可把要计算的区间离散成N个线段。如果自变量有两个,而计算区域是图1所示的矩形,则最简单的离散方式是把区域分成Μ乘N个小矩形。小矩形的长 h和宽k分别叫作x方向和y方向的步长。微分方程中出现的偏导数uy(x,y), 在微积分中是差商的极限,在有限差分方法中则代以差商。如图1中b点的uy有的情形可代以差商(u(a)-u(c))/2k,有的情形可代以(u(a)-u(b)/k,如果有二阶偏导数uyy,常常可代以二阶差商(u(a)-2u(b)+u(c)/2k,其中u(a)、u(b)和u(c)分别表示相应点的u值。 如以适当的差商来代替微分方程每一个导数,就得到对应于原微分方程的差分方程。怎样选差商至关重要。此外,偏微分方程总还要附加边界或初始条件,这些条件也要用差分形式表示。这样,对于每个网格点的未知函数值作出未知量的代数方程组。如果网格分得较密,即步长h和k都比较小,或Μ与N 的数值都比较大,则所得代数方程组的未知量的数目将很大,但借助计算机,还是可以很快求出解来。由于步长无法取为零,因此用差分方法只能求得原微分方程的近似解。但只要选择合理的差商和步长,计算结果仍能令人满意,有时还能得到精度很高的解。 有限元法 这种方法是把计算区域剖分成大小不等的三角形(或其他形状的)单元,然后在各单元上用适当的插值函数来代替未知函数。根据变分原理,可将偏微分方程化成代数方程来求解。这种方法具有很广泛的适应性,特别适于求解具有复杂边界形状和物理条件的问题,而且很容易在计算机上实现。1970年以来已研究出一些适用于广泛的线性问题的有限元通用程序,对工程设计起很大作用。图2是一辆汽车外壳分割成单元的示意图。按照有限元法剖分的思想,把汽车外壳剖分成大小不等的许多三角形单元,而对弯曲边界只须裁弯取直即可。在应力变化剧烈和要求精确计算的地方,须把单元取得小些;在变化不剧烈的地方则可取得大些。用这种方法不仅可以适应复杂的区域,还可以尽量减少总的单元数目,从而减少未知量的数目。如果在有限差分方法中用矩形网格,则较难处理如此复杂的区域。 数值计算的误差、假象和错误 误差 数值计算的误差主要有两种:①舍入误差:计算机中的数字是有限位的,按十进制一般只有六位、八位到十位,位数较长的数或无理数如或圆周率π等,只好舍去尾数才输送进机器。每一次四则运算都有舍入问题,因而会出现“舍入误差”。在数值计算过程中,运算的舍入,有时会因相互抵销而无损于计算结果,有时也会因积累而造成严重误差,例如用“不稳定的”差分格式就会导致舍入误差的大量积累。②截断误差:以差分近似代替微分引起的误差就属这种误差。此外,还有许多原因能导致误差的出现。例如,对不规则复杂区域进行裁弯取直;采用不准确的原始物理数据进行计算;求线性和非线性代数方程组的近似解;把微分方程的边界条件用数值方法中的边界条件来代替也引进了误差。对这些误差进行分析并设计好计算法来控制误差,是数值方法的一项重要任务。 假象和错误 即计算的部分结果或全部结果与客观真实不尽相合,甚至完全错误。原因可能来自对力学问题的数学提法不合理,也可能是由于所用的数值方法和计算机硬件和软件有问题,分述于下:①如果力学问题的数学提法合理,则它的解存在且唯一,而且还是稳定的。如果数学提法不合理,就不可能得到合适的数值方法,更谈不上算出符合实际的解答。力学模型通常忽略一些次要因素,以便使问题简化。如果忽略的因素太多使模型过分简单,它的解就不能描述力学现象的主要特点。这时,就必须修改力学模型(或力学提法)和数学提法,使之更符合实际。②用有限差分方法解力学问题时,差分格式应能尽量正确地反映原力学问题所遵循的基本定律(如守恒性)以及计算方法理论所要求的多种准则,否则不会得到合理的数值解。③即使力学模型和数学提法合理,而且数值方法在理论上正确,也经得起多次实践考验,计算结果也未必总能完全反映实际情况,因为模型总是要作一定程度的简化,总会有些因素没考虑到,而数值方法本身也会在全局或局部上有误差。④在用差分方法或有限元法时,限于计算机的功能或计算经费,网格不一定能取得足够细,因而不能正确反映某些有急剧变化的区域的情况。⑤电子计算机的硬件和软件不能保证绝对无误,如机器可能受各种干扰而元件损坏,软件的功能可能不周到,程序的编制也常常有差错,等等。用若干个有分析解或有可靠数据的典型题目来检验数值方法,以及将典型的力学实验数据与数值计算结果作比较,往往有助于了解数值计算中可能出现的假象和错误,并验证方法是否可靠,答案是否正确。 数值计算在力学中的作用 数值计算、力学实验和求(近似)分析解是相辅相成的,三者的密切配合有利于促进力学理论的发展及应用。有些力学实验要耗费大量的金钱和时间,如果有成熟的数值方法,则可用计算配合实验来节省总费用和时间。例如设计一种新型飞行器时,可以先用电子计算机计算若干设计方案并从中挑选几个较好的作风洞试验,就能很快得到一个最佳的设计方案,从而大大缩短设计周期。数值计算有时还能启发人们去安排重要的新实验。例如运动的等离子体可能会产生 T层的现象就是先用数值方法研究磁场中稠密等离子体的运动发现的,后来从实验中才得到证实。 数值解有时也能启发人们寻求相应的分析解。例如非线性方程 的“孤立波”解,以前用解析方法只能求出反映单个孤立波的解;60年代中期,用数值方法发现方程中还有反映多个不同速度的孤立波的相互碰撞、追赶和分散现象。相应的分析解就是在这种启发下找到的。可见数值计算与力学的结合确能解决技术中提出的许多力学问题,因而越来越受到人们的重视。 § 配图 § 相关连接 |
随便看 |
百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。