欧拉梯形格式C语言,常微分方程數值解法欧拉格式与梯形格式的比较.doc

常微分方程數值解法欧拉格式与梯形格式的比较

PAGE

PAGE 4

年级

00000

班号

0000

学号

0000

专业

000

姓名

00000

实验

名称

000000

实验类型

设计型

综合型

创新型

实验目的或要求

常微分的数值解法用欧拉格式与梯形格式进行比较。

(

)

已知准确解是

首先建立准确解的函数文件

function f=fun(x)

f=1-exp(-5*x.^2);

欧拉格式程序如下:

h=0.1;

x=0:0.1:1;

y=zeros(1,11);

y(1)=0;

for i=1:10

y(i+1)=y(i)+h*(10*x(i)*(1-y(i)));

end

y1=fun(x);

plot(x,y,'r*',x,y1,'*-')

梯形格式程序如下:

function f=funx(x,y)

f=10*x.*(1-y);

h=0.1;

x=0:0.1:1;

y=zeros(1,11);

y(1)=0;

for n=1:10

x(n+1)=x(n)+h;

z0=y(n)+h*feval(@funx,x(n),y(n));

for k=1:3

z1=y(n)+h/2*(feval(@funx,x(n),y(n))+feval(@funx,x(n+1),z0));

if abs(z1-z0)<1e-3

break;

end

z0=z1;

end

y(n+1)=z1;

end

y1=fun(x);

plot(x,y,'r*',x,y1,'*-')

程序运行结果如下:

一、欧拉格式

-. 是真实值,* 是数值解。从图形来看还是比较接近真实解的。

这是梯形格式的数值解与真实解的图形。-. 是真实值,* 是数值解

从图形看出,此题用梯形格式的数值解是非常接近真实值的。

心得体会:

欧拉格式的程序较简单,对于梯形格式的数值解法,也是逐步显式的过程,用Euler方法提供迭代处置,而得到迭代公式,从而建立程序的编写过程,这是关键。

从图形来看,梯形格式显然比欧拉格式更接近真实值。

教师签名:

年 月 日

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值