数值分析讲义第五章常微分方程数值解法.ppt
第五章常微分方程数值解
/*NumericalMethodsforOrdinaryDifferentialEquations*/;解析解法:〔常微分方程理论〕
只能求解极少一类常微分方程;实际中给定的问题不一定是解析表达式,而是函数表,无法用解析解法。;;几何意义;定义;;定义;;由于未知数yn+1同时出现在等式的两边,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。隐式公式不能直接求解,一般需要用Euler显式公式得到初值,然后用Euler隐式公式迭代求解。因此隐式公式较显式公式计算复杂,但稳定性好〔后面分析〕。;;由于未知数yn+1同时出现在等式的两边,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。隐式公式不能直接求解,一般需要用Euler显式公式得到初值,然后用Euler隐式公式迭代求解。因此隐式公式较显式公式计算复杂,但稳定性好〔后面分析〕。;由于未知数yn+1同时出现在等式的两边,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。隐式公式不能直接求解,一般需要用Euler显式公式得到初值,然后用Euler隐式公式迭代求解。因此隐式公式较显式公式计算复杂,但稳定性好〔后面分析〕。;由于未知数yn+1同时出现在等式的两边,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。隐式公式不能直接求解,一般需要用Euler显式公式得到初值,然后用Euler隐式公式迭代求解。因此隐式公式较显式公式计算复杂,但稳定性好〔后面分析〕。;由于未知数yn+1同时出现在等式的两边,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。隐式公式不能直接求解,一般需要用Euler显式公式得到初值,然后用Euler隐式公式迭代求解。因此隐式公式较显式公式计算复杂,但稳定性好〔后面分析〕。;?隐式欧拉法的局部截断误差:;§1Euler’sMethod;?隐式欧拉法的局部截断误差:;比较尤拉显式公式和隐式公式及其局部截断误差;;梯形法的迭代计算和收敛性;梯形法的简化计算
迭代计算量大,且难以预测迭代次数。为了控制计算量,通常只迭代一次就转入下一点的计算。用显式公式作预测,梯形公式作??正,得到如下预测校正系统,也称为改进尤拉法:;注:此法亦称为预测-校正法/*predictor-correctormethod*/。可以证明该算法具有2阶精度,同时可以看到它是个单步递推格式,比隐式公式的迭代求解过程简单。后面将看到,它的稳定性高于显式欧拉法。;几何解释;;?中点欧拉公式/*midpointformula*/;几何解释;;预测误差和校正误差的事后误差估计式;?预测-校正-改进公式;;两个预测--校正系统;例;;§2龙格-库塔法/*Runge-KuttaMethod*/;(2);要使公式具有p阶精度,那么在(1)式中截取前p+1项,用(2)式计算各阶导数,即得下面Taylor公式:;2.Taylor公式(3)外表上看形式简单,但具体构造时往往很困难,因为按(2)式求导,这一过程可能很复杂。因此通常不直接用Taylor公式,而借鉴其思想提出其它公式。;单步递推法的基本思想是从(xn,yn)点出发,以某一斜率沿直线达到(xn+1,yn+1)点。欧拉法及其各种变形所能达到的最高精度为2阶。;例;由此看出,改进的尤拉公式用xn与xn+1两个节点的斜率的算术平均作为平均斜率,xn+1点的斜率通过信息yn来预测。;§2Runge-KuttaMethod;§2Runge-KuttaMethod;Q:为获得更高的精度,应该如何进一步推广?
改进的Euler公式推广为二阶Runge-Kutta公式带来这样的启示:
假设在[xn,xn+1]上多预测几个点的斜率值,然后将它们的算术平均作为平均斜率,那么有可能构造出具有更高精度的计算公式。
--------Runge-Kutta方法的根本思想。;其中?i(i=1,…,m),?i(i=2,…,m)和?ij(i=2,…,m;j=1,…,i?1)均为待定系数,确定这些系数的步骤与前面相似。;?Gill公式:4阶经典龙格-库塔公式的一种改进;§2Runge-KuttaMethod;§2Runge-Kut