- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
常微分方程组初值问题数值解的实现和算法分析
摘 要
本次课程设计主要内容是用改进Euler方法和四阶Runge-Kutta方法解决常微分方程组初值问题的数值解法,通过分析给定题目使用Matlab编写程序计算结果并绘图然后区别两种方法的。最后对计算结果进行分析,得到结论。
关键词:改进Euler,Runge-Kutta,初值问题
1前言 1
2题目叙述 1
3解题思路 1
3.1一阶常微分方程的初值问题 1
3.2一阶常微分方程组的初值问题 2
3.2.1用Runge-Kutta方法计算解决一阶微分方程组初值问题的基本思路 2
3.2.2用改进Euler方法计算解决一阶微分方程组初值问题的基本思路 4
4用matlab语言编程解决相关问题 4
4.1四阶Runge-kutta方法的Matlab编程实现 4
4.2 Euler改进方法Matlab编程实现 5
5 编程解决 6
5.1 输入计算题目 6
5.2用Runge-Kutta方法的Matlab编程解法 6
5.3用改进Euler方法的Matlab编程解法 7
6计算结果 8
6.1用四阶Runge-Kutta方法的Matlab编程解法的结果以及与精确解的比较 9
6.2用改进Euler方法的Matlab编程解法的结果以及与精确解的比较 9
7.结果分析 10
致谢 11
参考文献 12
附录 13
翻译 17
1前言
常微分方程是解决工程实例的常用的工具,建立微分方程只是解决问题的第一步,通常需要求出方程的解来说明实际现象,并加以检验。如果能得到解析形式的解固然是便于分析和应用的,但是我们知道,虽然求解常微分方程有各种各样的解析方法,但解析方法只能用来求解一些特殊类型的方程,实际问题终归结出来的微分方程主要靠数值解法[1]。数值解法就是一个十分重要的手段,而Euler方法以及Runge-Ktta方法又是数值解法最基础最常用的方法。2题目叙述
对以下的常微分方程组初值问题
用四阶Runge—Kutta方法求解,根据计算结果画出解的图形用改进Euler方法求解,根据计算结果画出解的图形。
3解题思路
3.1一阶常微分方程的初值问题
一阶常微分方程的初值问题的一般形式为:
我们知道,只要函数f (x, y)适当光滑——譬如关于y 满足利普希茨(Lipschitz)条件,即如果存在实数,使得
理论上就可以保证初值问题的解存在并且唯一。
所谓数值解法, 就是求上述问题在一系列离散点的近似值。两个相邻节点的间距称为步长[1]
3.2解一阶微分方程组时类似于单个方程的数值解法,只要把和理解为向量,那么就有:
一阶微分方程组初值问题的形式为:
??(1)
式中引入向量符号:
?????????
则(1)可写为:
???????(2)3.2.1用Runge-Kutta方法计算解决一阶微分方程组初值问题的基本思路
(2)式形式上与常数微分方程初值问题是一样的,只要注意向量函数运算及其表示,就可以用初值问题的求解格式得到常微分方程组初值问题(2)的求解格式,由初值问题的经典Runge-kutta公式可得一阶常微分方程组初值问题(2)的Runge-kutta公式:
注意上式是向量形式,其对应的分量形式为:
微分方程理论告诉我们,高阶微分方程可转化为一阶微分方程组来研究,因此可以用一阶微分方程组初值问题揭发来解高阶微分方程初值问题。
高阶微分方程初值问题的形式为:
?????????(3)
令则(2)化为了一阶微分方程组初值问题:
Runge-kutta方法巧妙利用函数在一些点上的函数值的线性组合,获得了高阶的数值解法,它避开了要获得高阶方法须对求高阶导数的不便,是离散化方法中Tayl情况,其中在准确性的工作量的综合效果看,经典的Runge-kutta方法是首选or展开法的一个应用。Runge-kutta方法主要用于定步长的。Runge-kutta方法也常用于对多步法提供初值。
3.2.2用改进Euler方法计算解决一阶微分方程组初值问题的基本思路
改进Euler方法需要用Euler方法求出一个预测值然后再用梯形公式校正一次得到,即所求结果的迭代格式。
(4)为了方便将(4)式改变为如下格式
4用matlab语言编程解决相关问题
4.1四阶Runge-kutta方法的Matlab编程实现
function [T]=Runge_Kutta(f,x0,y0,h,n)%? [T]=Runge_Kutta(f,x0,y0,h,n)
%??? f?????? 待解方程(组%??? x0????? 初试自变量值%??? y0????? 初试函数值%??? h?????? 步长%??? n?????? 步数if nargin5
n=100;
end
r=size(y
您可能关注的文档
- 安装keil4教程及keil4下增加C51支持.doc
- 安卓手机_WIFI_能连接上_但是不能上网问题解决方法.doc
- 岸边缓冲带生态功能和其建设的理论_王东胜.pdf
- 奥数(排列及组合).doc
- 宝德-服务器行业领导力量.pdf
- 备份及恢复简介.ppt
- 备战NOIP2010提高组初赛复习——算法篇之算法设计常用策略.doc
- 01进制和码元.ppt
- 悖论和其意义.doc
- 01验证与确认(打印).pdf
- 人教新目标版英语九年级 中考模拟学情评估(三)(含答案).pdf
- 上海市风华中学2024-2025学年高三上学期9月阶段测试英语试题(无答案).pdf
- 统编版2024-2025学年语文六年级上册期末检测卷(有答案).pdf
- 人教新目标版英语九年级第二学期全册学情评估(含答案).pdf
- 内蒙古自治区巴彦淖尔市杭锦后旗第六中学2024-2025学年八年级上学期阶段性测试历史试题(解析版).pdf
- 湖南省娄底市涟源市部分学校2024-2025学年高一上学期9月月考语文试题 Word版无答案.pdf
- 湖南省衡阳市常宁市2023-2024学年七年级上学期期末考试英语试题.pdf
- 湖南省娄底市涟源市部分学校2024-2025学年高一上学期9月月考语文试题 Word版含解析.pdf
- 江苏省泰州市姜堰区城西实验学校2024-2025学年部编版九年级上学期月考历史试卷(原卷版).pdf
- 内蒙古伊金霍洛旗2022-2023学年七年级上学期期末考试英语试题.pdf
最近下载
- 老年人误吸的预防护理课件.pptx
- 初中历史八年级下课件:第4课新中国工业化的起步和人民代表大会制度的确立.pptx
- 私募股权投资基金运作与管理-配套课件.ppt
- 2022小学体育新课标试卷及答案(共二套).doc VIP
- 4、新中国工业化的起步和人民代表大会制度的确立.docx VIP
- GB T 23776-2018_茶叶感官审评方法_高清版_可检索.pdf
- 中国民间故事阅读交流课教学设计.docx VIP
- 体量与力量——雕塑的美感 课件-2023-2024学年高中美术人美版(2019)美术鉴赏.pptx VIP
- 2022年牛津英语上海中考常考高频同义词组转换(含习题).docx
- 市场调查报告(模板).xls VIP
文档评论(0)