搜索
您的当前位置:首页正文

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

来源:知库网


学 生 实 验 报 告

实验课程名称 偏微分方程数值解

开课实验室 数统学院

学 院 数统 年级 2013 专业班 信计 02

学 生 姓 名 学 号

开 课 时 间 2015 至 2016 学年第 2 学期

总 成 绩 教师签名

数学与统计学院制

开课学院、实验室: 数统学院 实验时间 : 2016年 月 日

实验项目 名 称 指导教师 实验项目类型 初值问题的Euler方法和梯形法 曾芳 成 绩 验证 演示 综合 设计 其他 是 一.实验目的 通过该实验,要求学生掌握求解初值问题的欧拉法和梯形法,并能通过计算机语言编程实现这两种算法。 二.实验内容 考虑如下的初值问题: du2u,t0,1 dtu01该问题有解析解ut=e2t。 1. 用欧拉法求解该问题,取步长h=0.2,0.1,0.05,将3种步长的计算结果(tn=nh,n1,2,...,1/h时刻的计算结果),解析结果和相应的绝对误差列表显示。 2. 用梯形法求解该问题,取步长h=0.2,0.1,0.05,将3种步长的计算结果(tn=nh,n1,2,...,1/h时刻的计算结果),解析结果和相应的绝对误差列表显示。 3. 在同一种方法下,请说明哪种网格大小的计算结果更加精确,并说明理由。在相同的网格大小下,比较上述两种算法的计算结果,那种算法的结果要好一些,并说明理由。 三.实验原理、方法(算法)、步骤 欧拉法的迭代格式及误差估计: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; 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) 梯形法: 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)) 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

五.实验结果及实例分析 欧拉法输出分析: 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 1.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 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 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 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 梯形法输出分析: 计算值 解析值 误差 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 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 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 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 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 图像结果: 其中绿线代表欧拉法,红线为梯度法,蓝线为解析解: H=0.2 H=0.1 H=0.05 由图形结果易知梯形法的精度比欧拉法更高,更接近解析解。 教师签名 年 月 日

因篇幅问题不能全部显示,请点此查看更多更全内容

Top