MATLAB求解常微分方程数值解

MATLAB求解常微分方程数值解

ID:69049987

大小:551.50 KB

页数:22页

时间:2021-10-27

MATLAB求解常微分方程数值解_第1页
MATLAB求解常微分方程数值解_第2页
MATLAB求解常微分方程数值解_第3页
MATLAB求解常微分方程数值解_第4页
MATLAB求解常微分方程数值解_第5页
MATLAB求解常微分方程数值解_第6页
MATLAB求解常微分方程数值解_第7页
MATLAB求解常微分方程数值解_第8页
MATLAB求解常微分方程数值解_第9页
MATLAB求解常微分方程数值解_第10页
资源描述:

《MATLAB求解常微分方程数值解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、..-利用MATLAB求解常微分方程数值解-.word.zl-..-目录1.内容简介12.EulerMethod(欧拉法)求解12.1.显式Euler法和隐式Euler法12.2.梯形公式和改良Euler法12.3.Euler法实用性13.Runge-KuttaMethod(龙格库塔法)求解13.1.Runge-Kutta根本原理13.2.MATLAB中使用Runge-Kutta法的函数14.使用MATLAB求解常微分方程14.1.使用ode45函数求解非刚性常微分方程14.2.刚性常微分方程15.总结1参考文献1附录11.显式Euler

2、法数值求解12.改良Euler法数值求解13.四阶四级Runge-Kutta法数值求解1-.word.zl-..-4.使用ode45求解1-.word.zl-..-1.内容简介把?高等工程数学?看了一遍,增加对数学内容的了解,对其中数值解法比拟感兴趣,这大概是因为在其它各方面的学习和研究中经常会遇到数值解法的问题。理解模型然后列出微分方程,却对着方程无从下手,无法得出准确结果实在是让人难受的一件事情。实际问题中更多遇到的是利用数值法求解偏微分方程问题,但考虑到先从常微分方程下手更为简单有效率,所以本文只研究常微分方程的数值解法。把一个工程

3、实际问题弄出准确结果远比弄清楚各种细枝末节更有意思,因此文章中不追求非常严格地证明,而是偏向如何利用工具实际求解出常微分方程的数值解,力求将课程上所学的知识真正地运用到实际方程的求解中去,在以后遇到微分方程的时候能够熟练运用MATLAB得到能够在工程上运用的结果。文中求解过程中用到MATLAB进展数值求解,主要目的是弄清楚各个函数本质上是如何对常微分方程进展求解的,对各种方法进展MATLAB编程求解,并将求得的数值解与准确解比照,其中源程序在附录中。最后考察MATLAB中各个函数的适用范围,当遇到实际工程问题时能够正确地得到问题的数值解。

4、2.EulerMethod(欧拉法)求解Euler法求解常微分方程主要包括3种形式,即显式Euler法、隐式Euler法、梯形公式法,本节内容分别介绍这3种方法的具体内容,并在最后对3种方法精度进展比照,讨论Euler法的实用性。-.word.zl-..-本节考虑实际初值问题使用解析法,对方程两边同乘以得到下式两边同时求积分并采用分部积分得到解析解:本节后面将对此方程进展求解,并与准确解进展比照,分析Euler的可行性。1.1.显式Euler法和隐式Euler法显式和隐式Euler法都属于一阶方法,显式Euler法的迭代公式简单,如下所示

5、:对过上述公式对式进展迭代,其中步长,计算之间的数值,迭代求解的MATLAB程序见附录,能够得出准确解和数值解的图像,如下图。-.word.zl-..-图2.1显式Euler法准确解和数值解图像从图2.1中可以看出,显式Euler法在斜率很大的时候存在非常大的误差。本质上是Euler法只计算了每一步差值中的一阶局部,由Taylor级数可知:当公式中的二阶导数较大时就会产生明显的偏差,同时迭代过程中由于使用到上一部的结果,误差会在迭代中传播,因此这种Euler法在实际中是无法使用的,但是却给求解微分方程数值解提供了好的开场。另外一种Eule

6、r法是隐式Euler法,其迭代公式是,它并没有解决上面所说的问题,同时它的计算更加繁琐,对于无法化简成显示迭代的公式时还需要用迭代法求解非线性方程。-.word.zl-..-为了解决上面的方法,就需要提高迭代公式中计算差值的阶数,下面介绍了梯形法和改良Euler法,它们都是二阶方法。1.1.梯形公式和改良Euler法梯形公式以及改良Euler法都属于二阶方法,下面证明它是二阶方法,使用两次Taylor公式,将和展开:将得到从上式可以看出,梯形法的局部截断误差的主要局部是,是关于步长的三次式,这说明了梯形法取到了差值中的二次项,因此梯形法是

7、二阶方法。从上面可以得到梯形的迭代公式:但是上式并不容易计算,因为上式中的为带求量,当无法化成显式形式时,需要对上式进展迭代求解。因此梯形公式不易通过计算机编程求解,实际上改良的Euler法更容易求解。-.word.zl-..-改良Euler法迭代公式先通过显式Euler法求出一个估计值,通过这个估计值来计算,然前方程就变成了显式方程,从而可以得到修正值,改良Euler法更适合计算机编写程序,同样解决初值问题,详细MATLAB程序见附录2,得到的比照图像如图2.2所示。图2.2改良Euler法准确解与数值解比照由于改良Euler法用来求解

8、的并不是准确解,所以得到的导数会有一定误差,因此改良Euler法的实际局部截断误差不仅仅是。1.1.Euler法实用性从图2.1可以看出来一阶方法准确度非常差,根本上是无法用到实际工程中的,因

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。