第一范文网 - 专业文章范例文档资料分享平台

(完整版)哈工大-数值分析上机实验报告

来源:用户分享 时间:2025/5/24 11:09:57 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

2. 多步法:这类方法在计算yn+1的值时,除了需要知道xn+1、xn

和yn值外,还需要知道前k步的值。典型的方法如Adams法。 经典的R-K法是一个四阶的方法。它最大的优点就是它是单步法,精度高,计算过程便于改变步长。其缺点也很明显,计算量大,每前进一步就要计算四次函数值f。它的具体的计算公式如式(2)所示。

四阶Adams预测-校正方法是一个线性多步法,它是由Adams显式公式

?yn?1?yn?(K1?2K2?2K3?K4)h/6?K1?f(xn,yn)??K2?f(xn?h/2,yn?K1h/2) (2) ??K3?f(xn?h/2,yn?K2h/2)??K4?f(xn?h,yn?K3h)?和隐式公式组成,其计算公式如式(3)所示。

预测 yn?1?yn?(55fn?59fn?1?37fn?2?9fn?3)h/24

(3a)

求导 (3b)

校正 yn?1?yn?(9fn?1?19fn?5fn?1?fn?2)h/24

(3c)

求导 (3d)

将局部截断误差用预测值和校正值来表示,在预测和校正的公式中分别以它们各自的阶段误差来进行弥补,可期望的到精度更高的修正的

预测-校正公式为:

预测 pn?1?yn?(55fn?59fn?1?37fn?2?9fn?3)h/24 修正 mn?1?pn?1?(cn?pn)251/270 求导

校正 cn?1?yn?(9fn?1?19fn?5fn?1?fn?2)h/24 修正 yn?1?cn?1?(cn?1?pn?1)19/270 求导

由于开始时无预测值和校正值可以利用,故令p0=c0=0,以后按上面进行计算。此方法的优点是可以减少计算量;缺点是它不是自开始的,需要先知道前面的四个点的值,因此不能单独使用。另外,它也不便于改变步长。 程序设计:

本实验采用Matlab的M文件编写。其中待求的微分方程写成function的方式,如下

function yy=g(x,y); yy=-x*x-y*y;

写成如上形式即可,下面给出主程序。

经典四阶的R-K方法源程序

clear

%%%步长选取

h=0.1;

%%%初始条件,即x=0时,y=1。 y(1)=1;

%%%求解区间 a=0; b=2;

%%%迭代公式 for x=a:h:b-h;

k1=g(x,y((x-a)/h+1));%%,下同。 k2=g(x+h/2,y((x-a)/h+1)+h/2*k1); k3=g(x+h/2,y((x-a)/h+1)+h/2*k2); k4=g(x+h,y((x-a)/h+1)+h*k3);

y((x-a)/h+2)=y((x-a)/h+1)+h*(k1+2*k2+2*k3+k4)/6; end

四阶Adams预测-校正方法源程序

%%%步长选取 h=0.1;

%%%初始条件 y(1)=1;

%%%求解区间

a=0; b=2;

%%%应用RK迭代公式计算初始值y0,y1,y2,y3 for x=a:h:a+2*h;

k1=g(x,y((x-a)/h+1));

k2=g(x+h/2,y((x-a)/h+1)+h/2*k1); k3=g(x+h/2,y((x-a)/h+1)+h/2*k2); k4=g(x+h,y((x-a)/h+1)+h*k3);

y((x-a)/h+2)=y((x-a)/h+1)+h*(k1+2*k2+2*k3+k4)/6; end

%%%应用预测校正法求解 c(4)=0;%%%校正初值 p(4)=0;%%%预测初值

f(1)=g(a+0*h,y(1));,且将该值存在数组f中。 f(2)=g(a+1*h,y(2)); f(3)=g(a+2*h,y(3)); f(4)=g(a+3*h,y(4)); for n=4:(b-a)/h; %%%P预测

p(n+1)=y(n)+h/24*(55*f(n)-59*f(n-1)+37*f(n-2)-9*f(n-3));

(完整版)哈工大-数值分析上机实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c18zmx14zzf1xep036fj71ujtp7zr5k019hh_11.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top