常微分方程初值问题解法.ppt
1,第7章 常微分方程初值问题数值解法,7.1 引 言,2,本章研究的问题:,3,7.1 欧 拉 方 法及改进的欧拉法7.1.1 欧拉公式,图7.1 欧拉折线法,4,1 欧拉公式,(2),(3),5,6,2 欧拉公式的截断误差,(4),7,3 单步法的局部截断误差与阶,局部截断误差可以理解为计算一步的误差.,8,则称该方法具有P阶精度.,9,4 后退的欧拉方法,(5),10,(6),(6)式称为后退的欧拉方法,它是隐式的,欧拉公式(2)是显式的,11,(7),12,13,后退的欧拉方法的局部截断误差:,14,5 梯形方法,(8)式称为梯形方法.,(8),15,梯形方法的局部截断误差:,16,6.改进欧拉法及局部截断误差,预测步,校正步,或者写成,(1)改进的欧拉公式:,17,(2)改进的欧拉方法的局部截断误差,18,考虑改进Euler法,如果将其改成,-(1),7.2 Runge-Kutta法,19,改进Euler法是由梯形公式和Euler公式复合而成,梯形公式具有2阶精度,(1)式为一种二阶Runge-Kutta法,同样可以证明,改进Euler法也具有2阶精度。,20,Runge-Kutta方法的推导,21,Runge-Kutta方法的一般形式:,确定了阶数之后,再通过Taylor展开、比较两边系数的方法,确定各待定系数:,22,二阶显式Runge-Kutta方法,23,24,25,26,例,27,结果及比较,28,三阶显式Runge-Kutta方法,在推导二阶显式方法的过程中,注意到局部截断误差表达式中h3项包含了以下表达式:,因此若要在局部截断误差中消去h3项,必须增加包含了以上各项的多个方程,同时我们注意到r=2时,只有 等四个待定系数,少于方程的数目,所以这样的系数不存在。故:r=2时Runge-Kutta方法只能是二阶的。要得到三阶的方法,则必须有r=3。,29,三阶显式Runge-Kutta方法,30,四阶显式Runge-Kutta方法,31,例,32,结果及比较,33,关于Runge-Kutta方法,34,提高Runge-Kutta方法的精度的方法,提高精度最简单的方法是缩短步长,但要以牺牲计算速度和积累舍入误差为代价。,35,变步长的Runge-Kutta方法,作为妥协,如果能在计算过程中实时控制步长的大小,就可以在获得较高的计算速度的同时,保证较高的精度。七阶、八阶RKF7(8),36,单步法,