




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Matlab解微分方程,除了上述的已知ODE外,还须有起始条件y0=y(x0)才能解方程式,即是在x=x0时,y(x)=y0。上述各个方程式的解析解(analyticalsolution)如下:,阮奇-库达(Runge-Kutta)方法是最通用的解ODE的方法,它可以依计算精确度的要求有低阶到高阶的各个计算式,,MATLAB应用阮奇-库达法的函数有ode23,ode45,其中ode23是同时以二阶及三阶阮奇-库达法求解,而ode45则是以四阶及五阶阮奇-库达法求解。其语法为ode23(dy,x0,xn,y0),其中dy为ODE中的等式右边的函数(如之前介绍的),x0,xn是要解ODE的区间x0,xn的二个端点,y0是起始值(y0=y(x0)。而ode45的语法与ode23相同。,例一、要在区间2,4解以下的ODE:%m-function,g1.mfunctiondy=g1(x,y)dy=3*x.2;x,num_y=ode23(g1,2,4,0.5);anl_y=x.3-7.5;plot(x,num_y,b:,x,anl_y,r-)title(Solutionofg1)xlabel(x),ylabel(y=f(x),grid,Y=3x2,例二、要在区间0,5解以下的ODE:%m-function,g2.mfunctiondy=g2(x,y)dy=-0.131*y;x,num_y=ode23(g2,0,5,4);anl_y=4*exp(-0.131*x);plot(x,num_y,x,anl_y,o)title(Solutionofg2)xlabel(x),ylabel(y=f(x),grid,Y=-0.13y,例三、要在区间0,2解以下的ODE:%m-function,g3.mfunctiondy=g3(x,y)dy=2*x*cos(y)2;x,num_y=ode23(g3,0,2,pi/4);anl_y=atan(x.*x+1);plot(x,num_y,b:,x,anl_y,r-)title(Solutionofg3)xlabel(x),ylabel(y=f(x),grid,Y=2xcos2y,例四、要在区间0,3解以下的ODE:%m-function,g4.mfunctiondy=g4(x,y)dy=3*y+exp(2*x);x,num_y=ode23(g4,0,3,3);anl_y=4*exp(3*x)-exp(2*x);plot(x,num_y,x,anl_y,o)title(Solutionofg4)xlabel(x),ylabel(y=f(x),gri,Y=3y+e2x,如果将上述方法改以ode45计算,你可能无法察觉出其与ode23的解之间的差异,那是因为我们选的ODE代表的函数分布变化平缓,所以高阶方法就显现不出其优点。不过以二者在计算的误差上做比较,ode45的误差量级会比ode23要小。以下是几个例子:,%m-function,g1.mfunctiondy=g1(x,y)dy=3*x.2;%m-file,odes1.m;%Solveanodeusingode23andode45clgx1,num_y1=ode23(g1,2,4,0.5);anl_y1=x1.3-7.5;error_1=abs(anl_y1-num_y1)./abs(anl_y1);%ode23的计算误差,x2,num_y2=ode45(g1,2,4,0.5);anl_y2=x2.3-7.5;%注意x2个数与x1不一定相同error_2=abs(anl_y2-num_y2)./abs(anl_y2);%ode45的计算误差holdonsubplot(2,2,1)plot(x1,num_y1,x1,anl_y1,o)title(ODE23solution),ylabel(y),subplot(2,2,2)plot(x1,error_y1)%注意二种方法的误差title(ODE23error),ylabel(y)%ode23的误差的量级为1.e-16subplot(2,2,3)plot(x2,num_y2,x2,anl_y2,o)title(ODE45solution),ylabel(y)subplot(2,2,4)plot(x1,error_y2)title(ODE45error),ylabel(y)%ode45的解没有误差holdoff,另一个例子:%m-function,g5.mfunctiondy=g5(x,y)dy=-y+2*cos(x);%m-file,odes1.m%Solveanodeusingode23andode45clg,x1,num_y1=ode23(g5,0,5,1);anl_y1=sin(x1)+cos(x1);error_1=abs(anl_y1-num_y1)./abs(anl_y1);x2,num_y2=ode45(g5,0,5,1);anl_y2=sin(x2)+cos(x2);error_2=abs(anl_y2-num_y2)./abs(anl_y2);holdon,subplot(2,2,1)plot(x1,num_y1,x1,anl_y1,o)title(ODE23solution),ylabel(y)subplot(2,2,2)plot(x1,error_1)%注意二种方法的误差title(ODE23error),ylabel(y)%ode23的误差的量级为1.e-4,subplot(2,2,3)plot(x2,num_y2,x2,anl_y2,o)title(ODE45solution),ylabel(y)subplot(2,2,4)plot(x2,error_2)title(ODE45error),ylabel(y)%ode45的误差的量级为1.e-6holdoff,高阶常微分方程式,一个高阶常微分方程式可以利用变数改变(changeofvariables)方式改写成一组联立的一阶常微分方程式。例如以下的n阶方程式,以下即是解二阶ODE的解法:u_prime(1)=u(1)*(1-u(2)2)-u(2);u_prime(2)=u(1);u(1)=y=y*(1-y2)-y;y=u(1);functionu_prime=eqns2(x,u)u_prime=u(1)*(1-u(2)2)-u(2);u(1);initial=00.25;x,num_y=ode23(eqns2,0,20,initial);subplot(2,1,1),plot(x,num_y(:,1)title(1stderivative
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年甘肃省中共嘉峪关市委党校(市行政学院)招聘公益性岗位人员考前自测高频考点模拟试题及答案详解(典优)
- 2025年度国家电投校园招聘考前自测高频考点模拟试题及完整答案详解
- 2025年“才聚齐鲁成就未来”山东泰安市泰山财产保险股份有限公司河南分公司社会招聘4人模拟试卷带答案详解
- 2025年甘肃省临夏州东乡县融媒体中心招聘模拟试卷及答案详解(考点梳理)
- 商家代表发言稿(7篇)
- 2025年甘肃省天水天光半导体有限责任公司招聘18人考前自测高频考点模拟试题及完整答案详解1套
- 婚礼上的新郎致辞(27篇)
- 2025年河北邯郸馆陶县公开招聘(选聘)辅助性岗位工作人员13名考前自测高频考点模拟试题及答案详解一套
- 2025年哈尔滨市香电幼儿园招聘3人模拟试卷及答案详解参考
- 2025年线下演出市场复苏中的演出市场法律法规研究报告
- 街道管理考试题库及答案
- 2025年执业药师之《药事管理与法规》题库附参考答案详解(培优)
- 2025年企业管理人员能力考试试题及答案
- 统编语文(2024)二年级上册识字5《去外婆家》课件
- 2025年6月浙江省高考化学试卷真题(含答案及解析)
- 物权编善意取得制度解读
- 2025年高考政治总复习高中三年必考基础知识复习汇编资料(必背版)
- 保障性租赁住房房屋维修保养方案
- 信访诉求书撰写指南2025
- 医生法律法规知识培训课件
- 2025年广西公需科目答案02
评论
0/150
提交评论