Matlab中ode函数调用.doc

上传人:人*** 文档编号:563757198 上传时间:2022-10-26 格式:DOC 页数:3 大小:56.51KB
返回 下载 相关 举报
Matlab中ode函数调用.doc_第1页
第1页 / 共3页
Matlab中ode函数调用.doc_第2页
第2页 / 共3页
Matlab中ode函数调用.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《Matlab中ode函数调用.doc》由会员分享,可在线阅读,更多相关《Matlab中ode函数调用.doc(3页珍藏版)》请在金锄头文库上搜索。

1、函数功能编辑本段回目录ode是专门用于解微分方程的功能函数,他有ode23,ode45,ode23s等等,采用的是Runge-Kutta算法。ode45表示采用四阶,五阶runge-kutta单步算法,截断误差为(x)。解决的是Nonstiff(非刚性)的常微分方程.是解决数值解问题的首选方法,若长时间没结果,应该就是刚性的,换用ode23来解. www.iLoveM使用方法编辑本段回目录T,Y=ode45(odefun,tspan,y0) odefun是函数句柄,可以是函数文件名,匿名函数句柄或内联函数名 www.iLoveM tspan 是区间 t0tf或者一系列散点t0,t1,.,tf

2、book.iLoveM y0 是初始值向量 www.iLoveMT 返回列向量的时间点 www.iLoveM Y 返回对应T的求解列向量 www.iLoveMT,Y=ode45(odefun,tspan,y0,options) Simulink与信号处理 options 是求解参数设置,可以用odeset在计算前设定误差,输出参数,事件等 Simulink与信号处理 T,Y,TE,YE,IE=ode45(odefun,tspan,y0,options) Matlab中文论坛在设置了事件参数后的对应输出 www.iLoveM TE 事件发生时间 book.iLoveM YE 事件解决时间 Mat

3、lab中文论坛IE 事件消失时间 www.iLoveMsol=ode45(odefun,t0tf,y0.) book.iLoveM sol 结构体输出结果 www.iLoveM应用举例编辑本段回目录1 求解一阶常微分方程程序:一阶常微分方程odefun=(t,y)(y+3*t)/t2;%定义函数 Simulink与信号处理tspan=14;%求解区间y0=-2;%初值 Simulink与信号处理 t,y=ode45(odefun,tspan,y0);plot(t,y)%作图title(t2y=y+3t,y(1)=-2,1t4)legend(t2y=y+3t) xlabel(t) Simulin

4、k与信号处理 ylabel(y)%精确解%dsolve(t2*Dy=y+3*t,y(1)=-2)%ans= 一阶求解结果图%(3*Ei(1)-2*exp(1)/exp(1/t)-(3*Ei(1/t)/exp(1/t) book.iLoveM2 求解高阶常微分方程关键是将高阶转为一阶,odefun的书写.F(y,y,y.y(n-1),t)=0用变量替换,y1=y,y2=y.注意odefun方程定义为列向量dxdy=y(1),y(2).Simulink与信号处理程序:functionTestode45tspan=3.94.0;%求解区间y0=28;%初值t,x=ode45(odefun,tspan,y0);plot(t,x(:,1),-o,t,x(:,2),-*)legend(y1,y2)title(y=-t*y+et*y+3sin2t) book.iLoveMxlabel(t)ylabel(y)functiony=odefun(t,x)y=zeros(2,1);%列向量y(1)=x(2);y(2)=-t*x(1)+exp(t)*x(2)+3*sin(2*t);endend高阶求解结果图相关函数编辑本段回目录ode23,ode45,ode113,ode15s,ode23s,ode23t,ode23tb

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号