Matlab中解常微分方程的ode45

ode是专门用于解微分方程的功能函数,他有ode23,ode45,ode23s等等,采用的是Runge-Kutta算法。ode45表示采用四阶,五阶runge-kutta单步算法,截断误差为(Δx)^3。解决的是Nonstiff(非刚性)的常微分方程.是解决数值解问题的首选方法,若长时间没结果,应该就是刚性的,换用ode23来解.其他几个也是类似的用法

使用方法

[T,Y] = ode45(odefun,tspan,y0)

odefun 是函数句柄,可以是函数文件名,匿名函数句柄或内联函数名

tspan 是区间

[t0 tf] 或者一系列散点[t0,t1,...,tf]

y0 是初始值向量

T 返回列向量的时间点

Y 返回对应T的求解列向量

[T,Y] = ode45(odefun,tspan,y0,options)

options 是求解参数设置,可以用odeset在计算前设定误差,输出参数,事件等

[T,Y,TE,YE,IE] =ode45(odefun,tspan,y0,options)

每组(t,Y)之产生称为事件函数。每次均会检查是否函数等于零。并决定是否在零时终止运算。这可以在函数中之特性上设定。例如以events 或@events产生一函数。[value, isterminal,direction]=events(t,y)其中,value(i)为函数之值,isterminal(i)=1时运算在等于零时停止,=0时继续;direction(i)=0时所有零时均需计算(默认值),+1在事件函数增加时等于零,-1在事件函数减少时等于零等状况。此外,TE, YE, IE则分别为事件发生之时间,事件发生时之答案及事件函数消失时之指针i。

sol =ode45(odefun,[t0 tf],y0...) sol 结构体输出结果

应用举例

1 求解一阶常微分方程

程序:

) (y+3*t)/t^2; %定义函数

tspan=[1 4]; %求解区间

y0=-2; %初值

[t,y]=ode45(odefun,tspan,y0);

plot(t,y) %作图

title('t^2y''=y+3t,y(1)=-2,1legend('t^2y''=y+3t') xlabel('t')

ylabel('y') % 精确解

% dsolve('t^2*Dy=y+3*t','y(1)=-2')

% ans =

% (3*Ei(1) - 2*exp(1))/exp(1/t) - (3*Ei(1/t))/exp(1/t)

matlab生成有向网络,matlab ode45和矩阵生成有向网络图相关推荐

  1. 【论文翻译】Auto-painter:基于条件Wasserstein生成性对抗网络的草图卡通形象生成

    Auto-painter: Cartoon image generation from sketch by using conditional Wasserstein generative adver ...

  2. matlab测试网络,matlab测试网络

    赵辉<Visual+C++_MATLAB图像处理与识别实用案例精选> 程序代码说明 P0201:MATLAB赋值 P0202:MATLAB中的for循环 P0203:MATLAB中的for ...

  3. matlab离散方波信号,MATLAB - 在ODE15s函数中生成方波信号?(MATLAB - Generate square signal in ODE15s function?)...

    MATLAB - 在ODE15s函数中生成方波信号?(MATLAB - Generate square signal in ODE15s function?) 我试图从函数内部生成一个方形信号,通过O ...

  4. 复杂网络系统matlab,复杂网络matlab

    无标度网络matlab建模_其它_工作范文_实用文档.实用文档复杂系统无标度网络研究与建模 XXX 南京信息工程大学 XXXX 系,南京 210044 摘要:21 世纪是复杂性的世界,...... 3 ...

  5. matlab设l创建网络,利用matlab进行简单的贝叶斯网络构建 | 学步园

    matlab的安装 第一次装matlab,装好后发现没有在桌面生成图标,还以为是最后提示的编译器没有安装.结果发现,matlab的图标在其安装的bin目录下面,进行初始化就能开始使用了 关于贝叶斯网络 ...

  6. matlab实现随机攻击网络节点+蓄意攻击网络节点(2)

    上一篇介绍了随机攻击网络节点与蓄意攻击节点的基本方法. 其中随机攻击的部分还有一些瑕疵,就是在实际的研究中,需要对网络进行多次(数十次甚至上百次)攻击后取指标变化平均值,这样的实验数据才具有一定的说服 ...

  7. matlab实现随机攻击网络节点+蓄意攻击网络节点(1)

    更新: 有同学反馈说:网络效率的函数可能有点问题.可以试试这个网路效率函数,对应的部分改一下就可以了. 还有最大连通子图比例函数:最大连通子图函数 欢迎大家加入复杂网络交流群 如果二维码过期,请私信我 ...

  8. matlab生成exe-在没有安装matlab的电脑上运行matlab生成的exe

    在没有安装matlab的电脑上运行matlab生成的exe 本文介绍如何将matlab生成exe,并将该exe在没有安装matlab的电脑上运行,与以前的博文相似地,不说废话,直接干货. 1.编写函数 ...

  9. matlab打包多个m文件,MATLAB GUI多个m文件和fig如何生成exe文件

    MATLAB GUI多个m文件和fig如何生成exe文件 方法一: 已有gui.m文件和gui.fig文件 1 在matlab的command窗口中输入 mcc -B sgl GUI.m 2.将上步生 ...

最新文章

  1. uitableviw 自适应高度
  2. hdu 5639(区间dp)
  3. 英特尔首推物联网云平台设备管理
  4. 高手与菜鸟,思想与技术
  5. 怎么把 html做成雪花特效,CSS3 HTML5下雪特效 雪花飘飘
  6. 三大运营商将解决新老用户套餐不同权问题;罗永浩与抖音合作;Git 2.26发布 | 极客头条...
  7. ocx注册方法,vs安装包自动安装ocx,以及ocx注册失败的解决方法
  8. win10连接计算机,win10怎么连接局域网打印机
  9. Grain Timers and Reminders
  10. 国内外有哪些做小样本学习(Few-Shot Learning)的优秀团队?
  11. selenium-爬取公众号0.2
  12. servlet容器,web容器,spring容器,springmvc容器的区别
  13. 哈夫曼树的构建及哈夫曼树编码
  14. Ubuntu无显示器远桌面程连接分辨率低图标大问题解决方法
  15. 信息系统项目管理师 - 信息系统项目管理基础
  16. fatal error vips vips8 file not found 完美解决方法
  17. 设计中的手写识别(输入法)思路 -- 上篇
  18. C/C++——字符串分割(strtok, strtok_s)
  19. python操作excel----xlrd(读)
  20. 【整理】3dsMax中J是什么命令?

热门文章

  1. ASP.NET Core 进程外(out-of-process)托管(7)《从零开始学ASP.NET CORE MVC》
  2. SeaweedFS在.net core下的实践方案
  3. AutoMapper在asp.netcore中的使用
  4. Roslyn项目系统简介
  5. 采用EntityFramework.Extended 对EF进行扩展(Entity Framework 延伸系列2)
  6. java如何输出线程的标识符_Java多线程面试题
  7. 两种方法清除Excel保护密码
  8. Android 节操视频播放器jiecaovideoplayer自定义播放音频使用:屏蔽全屏按钮,增加倒计时,当前时间/总时间
  9. comboBox绑定数据库后SelectedIndexChanged事件出错
  10. Android之提示javax.net.ssl.SSLHandshakeException: Chain validation failed