1、初值问题的Euler方法和梯形法学 生 实 验 报 告实验课程名称 偏微分方程数值解 开课实验室 数统学院 学 院 数统 年级 2013 专业班 信计 02 学 生 姓 名 学 号 开 课 时 间 2015 至 2016 学年第 2 学期总 成 绩教师签名数学与统计学院制开课学院、实验室: 数统学院 实验时间 : 2016年 月 日实验项目名 称初值问题的Euler方法和梯形法实验项目类型验证演示综合设计其他指导教师 曾芳成 绩是一实验目的通过该实验,要求学生掌握求解初值问题的欧拉法和梯形法,并能通过计算机语言编程实现这两种算法。二实验内容考虑如下的初值问题:该问题有解析解。1. 用欧拉法求解
2、该问题,取步长,将3种步长的计算结果(时刻的计算结果),解析结果和相应的绝对误差列表显示。2. 用梯形法求解该问题,取步长,将3种步长的计算结果(时刻的计算结果),解析结果和相应的绝对误差列表显示。3. 在同一种方法下,请说明哪种网格大小的计算结果更加精确,并说明理由。在相同的网格大小下,比较上述两种算法的计算结果,那种算法的结果要好一些,并说明理由。 三实验原理、方法(算法)、步骤欧拉法的迭代格式及误差估计:un+1=un+hf(tn ,un). un-u( tn ) =O(h)欧拉法:function x,y=euler(fun,x0,xfinal,y0,n)if nargin5,n=50
3、;endh=(xfinal-x0)/n;x(1)=x0;y(1)=y0;for i=1:nx(i+1)=x(i)+h;y(i+1)=y(i)+h*feval(fun,x(i),y(i);endx=x;y=y;x1=0:1y1=exp(2*x1)plot(x,y,x1,y1)function f=doty(x,y);f=2*yx,y=euler(doty,0,1,1,10)梯形法:function x,y=tixing(fun,x0,xfinal,y0,n)if nargin5,n=50;endh=(xfinal-x0)/n;x(1)=x0;y(1)=y0;for i=1:nx(i+1)=x(i
4、)+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;endx=x;y=y;x1=0:1y1=exp(2*x1)plot(x,y,x1,y1)四实验环境(所用软件、硬件等)及实验数据文件 Matlab五实验结果及实例分析欧拉法输出分析:H= 计算值 解析值 误差 0 H= 0 H= 0 梯形法输出分析: 计算值 解析值 误差H= 0 H= 0 H= 0 图像结果:其中绿线代表欧拉法,红线为梯度法,蓝线为解析解:H=H=H=由图形结果易知梯形法的精度比欧拉法更高,更接近解析解。教师签名年 月 日