1、偏微分方程的数值方法 刘铭 偏微分方程定解问题 是表述自然与工程技术领域中各种现象最重要的数学工具之一 应用十分广泛 遗憾的是 绝大多数偏微分方程的解不能以实用的解析形式来表示 因而其数值解就显得尤为重要 虽然常微分方程数值方法的历史可以追溯到18世纪 一些偏微分方程的数值方法也在20世纪初得到研究 但是 它们发展成为一门理论上严谨 实用上有效的学科 还是20世纪50年代以来的事 这主要得益于电子计算机的诞生 偏微分方程的分类 1 椭圆型方程 2 抛物型方程 如热传导方程 3 双曲型方程 如波动方程 三种类型的边界条件 1 狄里赫利型边界条件 第一类边界条件 边界上的函数值已知 2 纽曼型边界
2、条件 第二类边界条件 边界上函数的法向导数值已知或是一种连续函数 3 混合边界条件 边界条件为第一类边界条件和第二类边界条件的线性组合 边界条件 数值求解偏微分方程定解问题的主要方法 1 差分方法2 有限元方法 共同点 都是将连续的偏微分方程进行离散 采取适当形式将其化为线性代数方程组 通过求解代数方程组给出其数值解 差分方法 无论是常微分方程还是偏微分方程 初值问题或边值问题 椭圆型 双曲型或抛物型二阶线性方程 以及高阶方程或非线性方程 通常均可利用此法将它们转化为代数方程组 再借助计算机求其数值解 目前 对于线性偏微分方程定解问题 差分方法已经形成了较成熟的算法格式 对于非线性问题 有效的
3、算法正在迅速发展之中 差分方法的准备工作 1 把求解的区域划分成网格 2 把求解区域内连续的函数用网格节点上的离散的数值代替 网格的划分有不同的方法 有正方形和三角形网格等划分方法 差分方法的基础 即泰勒级数展开 差分方法的基本概念 用差商代替导数 一阶导数的差分表达式 二阶导数的差分表达式 随着精度的不断提高 可以推导出无穷无尽的差分表达式 对于高阶精度公式 其优点 缺点 1 缺点 高阶精度的差分需要更多的网格点 所以计算中的每一步都需要更多的计算时间 2 优点 要得到相同精度的解 如果使用高阶差分格式 网格点的总数可以更少一些 高阶差分格式可以给出质量更高的解 例如 方程有两个自变量x和t
4、 设t是用于推进求解的变量 i是x方向的标号 n是t方向的标号 设第n层上的数值已知 求第n 1层上的数值 差分方程的显式方法与隐式方法 显式方法 时间导数x方向导数差分方程 隐式方法 整理隐式格式 将未知量放在等式左边 已知量放到右边 得隐式格式可化成三对角形式的方程组 显式方法 每一个差分方程只包含一个第n 1层的未知数 从而这个未知数可以用直接计算的方式显式地求解 显式方法是最简单的方法 隐式方法 包含第n 1层上的多个未知量 必须形成一个代数方程组 由于需要求解联立的代数方程组 隐式方法通常涉及大型矩阵的运算 比显式方法需要更多 更复杂的计算 显示方法和隐式方法的优缺点 1 显式方法优
5、点 方法的建立及编程相对简单 缺点 对取定的 x t必须小于稳定性条件对它提出的限制 在某些情形 t必须很小 才能保持稳定性 要将时间推进计算到时间变量的给定值 就需要很长的计算机运行时间 2 隐式方法优点 用大得多的 t值也能保持稳定性 要将时间推进计算到时间变量的给定值 需要少得多的时间步 这将使计算机运行时间更短 缺点 方法的建立和编程更复杂 而且 由于每一时间步的计算通常需要大量的矩阵运算 每一时间步的计算机运行时间要比显式方法长得多 求解偏微分方程的一些差分方法 有限元方法 有限元方法属于变分法的范畴 是古典的变分法和分片多项式插值相结合的产物 由于差分法通常采用方形网格 很难适应区域形状的任意性 而有限元方法可以用多种多样的网格对区域作剖分 可以适应各种形状的区域 MATLAB的偏微分方程工具箱 PDEToolbox 提供了空间二维问题高速 准确的求解过程 用户只要使用界面或M文件 画出所需要的区域 输入方程类型和有关系数 就可显示解的图形和输出解得数值 谢谢