实验报告——常微分方程的数值解法.doc_第1页
实验报告——常微分方程的数值解法.doc_第2页
实验报告——常微分方程的数值解法.doc_第3页
实验报告——常微分方程的数值解法.doc_第4页
实验报告——常微分方程的数值解法.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验报告实验项目名称 常微分方程的数值解法 实验室数学实验室 所属课程名称 微分方程数值解 实 验 类 型 上机实验 实 验 日 期 2013年3月11日 班 级 10信息与计算科学 学 号 2010119421 姓 名 叶达伟 成 绩 实验概述:【实验目的及要求】运用不同的数值解法来求解具体问题,并通过具体实例来分析比较各种常微分方程的数值解法的精度,为以后求解一般的常微分方程起到借鉴意义。【实验原理】 各种常微分方程的数值解法的原理,包括Euler法,改进Euler法,梯形法,Runge-Kutta方法,线性多步方法等。【实验环境】(使用的软硬件)Matlab软件实验内容:【实验方案设计】 我们分别运用Euler法,改进Euler法,RK方法和Adams隐式方法对同一问题进行求解,将数值解和解析解画在同一图像中,比较数值解的精度大小,得出结论。【实验过程】(实验步骤、记录、数据、分析)我们首先来回顾一下原题:对于给定初值问题:1. 求出其解析解并用Matlab画出其图形;2. 采用Euler法取步长为0.5和0.25数值求解(2.16),并将结果画在同一幅图中,比较两者精度;3. 采用改进Euler法求解(2.16),步长取为0.5;4. 采用四级Runge-Kutta法求解(2.16),步长取为0.5;5. 采用Adams四阶隐格式计算(2.16),初值可由四级Runge-Kutta格式确定。 下面,我们分五个步骤来完成这个问题:步骤一,求出(2.16)式的解析解并用Matlab画出其图形; ,用Matlab做出函数在上的图像,见下图:图一 初值问题的解析解的图像步骤二,采用Euler法取步长为0.5和0.25数值求解(2.16),并将结果画在同一幅图中,比较两者精度; 我们采用Euler法取步长为0.5和0.25数值求解,并且将数值解与解析解在一个图中呈现,见下图:图二 Euler方法的计算结果与解析解的比较 从图像中不难看出,采用Euler法取步长为0.5和0.25数值求解的误差不尽相同,也就是两种方法的计算精度不同,不妨将两者的绝对误差作图,可以使两种方法的精度更加直观化,见下图:图三 不同步长的Euler法的计算结果与解析解的绝对误差的比较 从图像中我们不难看出,步长为0.25的Euler法比步长为0.5的Euler法的精度更高。步骤三,采用改进Euler法求解(2.16),步长取为0.5; 我们采用改进Euler法求解,步长取0.5,数值解如下图:图四 改进Euler法的计算结果与解析解的比较步骤四,采用四级Runge-Kutta法求解(2.16),步长取为0.5;我们采用四级Runge-Kutta求解,步长取0.5,数值解如下图:图五 四级RK方法的计算结果与解析解的比较步骤五,采用Adams四阶隐格式计算(2.16),初值可由四级Runge-Kutta格式确定。我们采用Adams四阶隐格式计算公式求解,数值解如下图:图六 Adams四阶隐格式的计算结果与解析解的比较由于采用Adams四阶隐格式计算出来的数值解在时的量级为在时的量级为,因此,在Matlab图像处理中,将纵坐标的量级定为(不然,若纵坐标量级取大一些,解析解与水平轴几乎重合。)为了将Adams四阶隐格式计算出来的数值解全部呈现出来,又作了一张只有该数值解的图像,详见下图:图七 Adams四阶隐格式的计算结果最后,我们总结一下各种方法计算出来的数值解与解析解之间的绝对误差,详见下表:Euler法改进Euler法四级RK方法四阶Adams隐格式方法0.00.51.01.52.02.53.03.54.04.55.0表一 步长为0.5时各种数值解法的计算结果与解析解之间的绝对误差由于本题中步长h取为取值0.5,步长取值较大,计算结果与精确解之间的误差较大,难以判断各种数值方法的计算精度。因此,我在本题的基础上进行了拓展,将步长取为0.05,进一步研究各种方法的计算精度。从先前的例子中可以看出,误差主要是在t取值接近5的时候出现,所以在步长h=0.05时重点研究的计算结果与解析解之间的绝对误差,以比较各种方法的计算精度。绝对误差情况详见下表:Euler法改进Euler法四级RK方法四阶Adams隐格式方法4.504.554.604.654.704.754.804.854.904.955.00表二 步长为0.05时各种数值解法的计算结果与解析解之间的绝对误差通过步长的减小,我们得出了更加精确的数值解,同时也可以比较各种算法的精度大小。不难发现,对于这个问题,四级RK方法的计算精度最大,其次是四阶Adams隐格式方法和改进Euler法,精度最差的是Euler法。(这不代表哪种方法最优,因为我们只计算了一个实例)【结论】(结果) 通过一个具体实例,我们比较了各种数值计算方法的精度大小,对于这个问题,四级RK方法的计算精度最大,其次是四阶Adams隐格式方法和改进Euler法,精度最差的是Euler法。【小结】本次实验,将不同的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论