当前位置:文档之家› 初值问题的Euler方法和梯形法

初值问题的Euler方法和梯形法

1.8147 1.8221 -0.0074
2.0029 2.0138 -0.0109
2.2102 2.2255 -0.0153
2.4386 2.4596 -0.0210
2.6902 2.7183 -0.0281
2.9674 3.0042 -0.0368
3.2727 3.3201 -0.0474
3.6089 3.6693 -0.0604
5.7201 6.0496 -0.3295
6.9113 7.3891 -0.4777
H=0.05
1.0000 1.0000 0
1.1050 1.1052 -0.0002
1.2208 1.2214 -0.0007
1.3483 1.3499 -0.0015
1.4890 1.4918 -0.0029
1.6439 1.6487 -0.0048
开课时间2015至2016学年第2学期
总成绩
教师签名
数学与统计学院制
开课学院、实验室:数统学院实验时间:2016年月日
实验项目
名称
初值问题的Euler方法和梯形法
实验项目类型
验证
演示
综合
设计
其他
指导教师
曾芳
成绩

一.实验目的
通过该实验,要求学生掌握求解初值问题的欧拉法和梯形法,并能通过计算机语言编程实现这两种算法。1Biblioteka 2000 1.2214 -0.0214
1.4400 1.4918 -0.0518
1.7280 1.8221 -0.0941
2.0736 2.2255 -0.1519
2.4883 2.7183 -0.2300
2.9860 3.3201 -0.3341
3.5832 4.0552 -0.4720
4.2998 4.9530 -0.6532
y(i+1)=y(i)+h*(feval(fun,x(i),y(i))+feval(fun,x(i+1),y(i+1)))/2;
end
x=x';
y=y';
x1=0:0.2:1
y1=exp(2*x1)
plot(x,y,x1,y1)
四.实验环境(所用软件、硬件等)及实验数据文件
Matlab
五.实验结果及实例分析
1.2200 1.2214 -0.0014
1.4860 1.4918 -0.0058
1.8074 1.8221 -0.0147
2.1955 2.2255 -0.0300
2.6639 2.7183 -0.0544
3.2289 3.3201 -0.0912
3.9101 4.0552 -0.1451
4.7311 4.9530 -0.2220
1.7716 1.8221 -0.0506
1.9487 2.0138 -0.0650
2.1436 2.2255 -0.0820
2.3579 2.4596 -0.1017
2.5937 2.7183 -0.1245
2.8531 3.0042 -0.1510
3.1384 3.3201 -0.1817
3.4523 3.6693 -0.2170
二.实验内容
考虑如下的初值问题:
该问题有解析解 。
1.用欧拉法求解该问题,取步长 ,将3种步长的计算结果( 时刻的计算结果),解析结果和相应的绝对误差列表显示。
2.用梯形法求解该问题,取步长 ,将3种步长的计算结果( 时刻的计算结果),解析结果和相应的绝对误差列表显示。
3.在同一种方法下,请说明哪种网格大小的计算结果更加精确,并说明理由。在相同的网格大小下,比较上述两种算法的计算结果,那种算法的结果要好一些,并说明理由。
其中绿线代表欧拉法,红线为梯度法,蓝线为解析解:
H=0.2
H=0.1
H=0.05
由图形结果易知梯形法的精度比欧拉法更高,更接近解析解。
教师签名
年 月 日
欧拉法输出分析:
H=0.2
计算值 解析值 误差
1.0000 1.0000 0
1.4000 1.4918 -0.0918
1.9600 2.2255 -0.2655
2.7440 3.3201 -0.5761
3.8416 4.9530 -1.1114
5.3782 7.3891 -2.0108
H=0.1
1.0000 1.0000 0
for i=1:n
x(i+1)=x(i)+h;
y(i+1)=y(i)+h*feval(fun,x(i),y(i));
end
x=x';
y=y';
x1=0:0.2:1
y1=exp(2*x1)
plot(x,y,x1,y1)
function f=doty(x,y);
f=2*y
[x,y]=euler('doty',0,1,1,10)
三.实验原理、方法(算法)、步骤
欧拉法的迭代格式及误差估计:un+1=un+hf(tn,un).∣un-u( tn)∣=O(h)
欧拉法:
function [x,y]=euler(fun,x0,xfinal,y0,n)
if nargin<5,n=50;
end
h=(xfinal-x0)/n;
x(1)=x0;y(1)=y0;
计算值 解析值 误差
H=0.2
1.0000 1.0000 0
1.4800 1.4918 -0.0118
2.1680 2.2255 -0.0575
3.1504 3.3201 -0.1697
4.5488 4.9530 -0.4042
6.5342 7.3891 -0.8548
H=0.1
1.0000 1.0000 0
梯形法:
function [x,y]=tixing(fun,x0,xfinal,y0,n)
if nargin<5,n=50;
end
h=(xfinal-x0)/n;
x(1)=x0;y(1)=y0;
for i=1:n
x(i+1)=x(i)+h;
y(i+1)=y(i)+h*feval(fun,x(i),y(i))
3.9793 4.0552 -0.0759
4.3871 4.4817 -0.0946
4.8362 4.9530 -0.1168
5.3307 5.4739 -0.1432
5.8752 6.0496 -0.1744
6.4748 6.6859 -0.2111
7.1349 7.3891 -0.2541
图像结果:
5.1598 6.0496 -0.8899
6.1917 7.3891 -1.1973
H=0.05
1.0000 1.0000 0
1.1000 1.1052 -0.0052
1.2100 1.2214 -0.0114
1.3310 1.3499 -0.0189
1.4641 1.4918 -0.0277
1.6105 1.6487 -0.0382
学学生实验报告实验课程名称偏微分方程数值解开课实验室数统学院学学院数统年级2013专业班信计02学学生姓名学号开开课时间2015至2016学年第2学期总总成绩教师签名数学与统计学院制开课学院实验室
学生实验报告
实验课程名称偏微分方程数值解
开课实验室数统学院
学院数统年级2013专业班信计02
学生姓名学号
3.7975 4.0552 -0.2577
4.1772 4.4817 -0.3044
4.5950 4.9530 -0.3581
5.0545 5.4739 -0.4195
5.5599 6.0496 -0.4897
6.1159 6.6859 -0.5700
6.7275 7.3891 -0.6616
梯形法输出分析:
相关主题