matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程

matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程在MATLAB官网ode45函数介绍中有一下四种用法。[t,y]=ode45(odefun,tspan,y0)https://www.mathworks.com/help/releases/R2020b/matlab/ref/ode45.html?doclanguage=zh-CN&nocookie=true&prodfilter=ML%20SL%205G%20AE%20AT%20AA%20AU%20DR%20AS%20BI%20CM%20VP%20CT%20CF%20DA%…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

     在MATLAB官网ode45函数介绍中有一下四种用法。 [t,y] = ode45(odefun,tspan,y0)icon-default.png?t=L892https://www.mathworks.com/help/releases/R2020b/matlab/ref/ode45.html?doclanguage=zh-CN&nocookie=true&prodfilter=ML%20SL%205G%20AE%20AT%20AA%20AU%20DR%20AS%20BI%20CM%20VP%20CT%20CF%20DA%20DB%20DF%20DH%20NN%20DO%20DS%20ET%20EC%20FH%20IT%20FI%20PO%20FL%20GD%20GC%20HD%20ES%20IE%20IA%20IP%20IC%20LP%20LS%20MG%20ME%20CO%20MJ%20DW%20MR%20MW%20AM%20MP%20MB%20MT%20NV%20OT%20OP%20DM%20PD%20AR%20BD%20BS%20CD%20CS%20PW%20PM%20RA%20RL%20RB%20RF%20RK%20RO%20RC%20RR%20TF%20SX%20SG%20SB%20SE%20SS%20LD%20PS%20SH%20MS%20VR%20VV%20CI%20RT%20SK%20SD%20CV%20SO%20DV%20WT%20PL%20XP%20SR%20RQ%20SZ%20HW%20EL%20SF%20ST%20SM%20ZC%20ID%20TA%20TR%20UV%20VE%20VN%20VT%20WA%20LH%20WL&docviewer=helpbrowser&docrelease=R2020b&s_cid=pl_webdoc&loginurl=https%3A%2F%2Flocalhost%3A31515%2Ftoolbox%2Fmatlab%2Fmatlab_login_framework%2Fweb%2Findex.html%3Fsnc%3DOHKPVM&searchsource=mw&snc=MDGHZE&container=jshelpbrowser#d122e852982

在此处,t,y是最终要通过ode45函数得到的结果。odefun是要求解的函数,英文span是跨度的含义,time是时间的含义。因此,顾名思义,tspan 表示时间的跨度,即时间的范围。而y0则便是要求解y的初值。即计算给定初值的函数在给定时间范围内的值。

如果还不是很清楚,那么,可以看官网给的一个简单的例子。

y’=2t

t=[0 5]

y(0)=0

对于这样的一个一阶导的函数,程序和结果如下:

matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程

matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程

  但由于该方程简单,因此也可以直接将2t写入主程序中。即下图所示:

 matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程

 上述是求一阶导的,那么如果相求二阶导的呢。

接下来,这个例子就是二阶微分方程了。方程如下所示:

 y”-(1-y^2)y’+y=0

y(0)=2,y'(0)=0

t=[0 20]

对于该方程,采用ode45求解的思路为:让y=y(1),y’=dy(1)=y(2),y”=ddy(1)=dy(2),即y的自身为y(1),y的一阶导赋值为y(2),y的二阶导赋值为y(3),从而将y的二阶导转化为y(2)的一阶导。

因为龙格库塔法是用来求一阶导的。理论内容可以参考数值分析等的书籍。通过将二阶导降阶成为一阶导,再用龙格库塔法ode45实现求解。

回到例子,则上述方程可表示为

dy(1)=y(2)

dy(2)=(1-y(1)^2)y(2)-y(1)

其求解程序和结果如下图。

 matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程

matlab用ode45求解一阶微分方程_matlab解一阶线性微分方程

 那么对于求解方程组即方程中存在分段函数,又该怎么处理呢。这将在后续进行记录。

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234298.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何区别标准POE交换机和非标POE交换机[通俗易懂]

    如何区别标准POE交换机和非标POE交换机[通俗易懂]通俗的说,POE交换机就是支持网线供电的交换机,其不但可以实现普通交换机的数据传输功能还能同时对网络终端进行供电。那么,我们该如何来区别如何区别标准POE交换机和非标POE交换机呢?接下来我们就跟随飞畅科技的小编一起来详细看看吧!一、什么是POE交换机PoE供电交换机是指能够通过网线为远端受电终端提供网络供电的交换机,包含网络交换机和PoE供电两个功能,是PoE供电系统中比较常见的供电设备。二、POE交换机的分类1、标准POE交换机符合IEEE802.3af、802.3at标准,就是标准P..

    2022年10月4日
    0
  • 小学六年级的读者,自学计算机,会爬虫,搞崩过学校网站,还有 Girlfriend…..[通俗易懂]

    小学六年级的读者,自学计算机,会爬虫,搞崩过学校网站,还有 Girlfriend…..[通俗易懂]大家好,我是小林。我之前遇到一个很奇怪的读者,他的头像是电影《V字仇杀队》里的面具。感觉上去是一个黑客爱好者,不是一个好惹的家伙,小林看了瑟瑟发抖。结果,他来了这么一句,「哥哥,在吗?」我头顶瞬间冒出一万个问号,怎么跟头像冷酷的感觉完全相反。只听过有的读者叫我小林哥,但是还真没遇到过直接称呼哥哥的,能说出这个称呼的话,感觉对方年纪不大。然后,他请教我关于kaliLinux安装失败的问题要怎么解决,我没有安装过,所以我也没办法解决他的问题,就让他自己去网上搜搜看看。然后,他还是没解决,

    2022年5月2日
    56
  • setLayout()和GridData的设置[通俗易懂]

    setLayout()和GridData的设置[通俗易懂]总结:(1)setLayout()是设置界面布局,如界面有几行几列如jf.setLayout(newGridLayout(2,1));//容器共有2行1列。GridLayoutlayout=newGridLayout();layout.numColumns=4;//设置容器的列数layout.makeColumnsEqualWidth=false;//设…

    2022年5月10日
    34
  • USB转RS485/RS422接线说明

    USB转RS485/RS422接线说明       

    2022年6月6日
    76
  • 镇远古城特色美食_镇远古城景点

    镇远古城特色美食_镇远古城景点  镇远是贵州东部的一座边城,“九山抱一水,一水分两城”,这里的一水,指的就是舞阳河。镇远古镇被舞阳河以“S”形的婀娜姿势穿越而过,分为南北两岸。这座有着2000多年悠久历史的古镇还保留着许多明清时代的古建筑。  …

    2022年9月22日
    0
  • Python网络编程之基于socket实现聊天机器人

    Python网络编程之基于socket实现聊天机器人

    2022年3月3日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号