Runge-Kutta算法.ppt
《Runge-Kutta算法.ppt》由会员分享,可在线阅读,更多相关《Runge-Kutta算法.ppt(23页珍藏版)》请在冰豆网上搜索。
Runge-Kutta积分方法,由此得到高阶的单步法。
但是,往往右函数的高阶导数或者无法直接得到、或者计算太过复杂。
所以实际的做法是:
用tn,tn+1区间中解曲线邻域的一些已知点函数值的线性组合来代替F(t,Y)的导数,从而得到高阶的单步法公式。
例,此处即通过计算已知点的函数值(K1,K2)的线性组合代替高阶导数,得到了较高的精度。
Runge-Kutta方法的推导,Runge-Kutta方法的一般形式:
确定了阶数之后,再通过Taylor展开、比较两边系数的方法,确定各待定系数:
二阶显式Runge-Kutta方法,展开各项如下:
其中,二阶显式Runge-Kutta方法,要使得方法是二阶的,则局部截断误差应该为三阶小量,即:
例,结果及比较,三阶显式Runge-Kutta方法,在推导二阶显式方法的过程中,注意到局部截断误差表达式中h3项包含了以下表达式:
因此若要在局部截断误差中消去h3项,必须增加包含了以上各项的多个方程,同时我们注意到r=2时,只有等四个待定系数,少于方程的数目,所以这样的系数不存在。
故:
r=2时Runge-Kutta方法只能是二阶的。
要得到三阶的方法,则必须有r=3。
三阶显式Runge-Kutta方法,四阶显式Runge-Kutta方法,四阶显式Runge-Kutta方法,xn,xn+h/2,xn+h,f1,f2,f3,f4,例,结果及比较,结果及比较,关于Runge-Kutta方法,提高Runge-Kutta方法的精度的方法,提高精度最简单的方法是缩短步长,但要以牺牲计算速度和积累舍入误差为代价。
变步长的Runge-Kutta方法,作为妥协,如果能在计算过程中实时控制步长的大小,就可以在获得较高的计算速度的同时,保证较高的精度。
Runge-Kutta-Fehlberg方法,Fehlberg设计了一个更加精巧的嵌套方法如下:
Runge-Kutta-Fehlberg方法,Fehlberg给出的四阶、五阶公式RKF4(5)如下:
Runge-Kutta-Fehlberg方法,七阶、八阶RKF7(8),Runge-Kutta-Fehlberg方法,七阶、八阶RKF7(8),单步法,作业,