knrt.net
当前位置:首页 >> 求教mAtlAB高手oDE45的用法! >>

求教mAtlAB高手oDE45的用法!

fun_u=@(t,u) u-2*t/u; [t,u]=ode45(fun_u, 0:0.01:1, 1); plot(t,u);

用法: [T,Y] = ode45(odefun,tspan,y0) 1、odefun 是函数句柄,可以是函数文件名,匿名函数句柄或内联函数名。 2、tspan是区间 [t0 tf] 或者一系列散点[t0,t1,...,tf]。 3、y0是初始值向量。 4、T返回列向量的时间点。 5、Y返回对应T的求解列向...

和odeset没关系,调用ode45的第二个参数可以指定特定时间点,例如 [t0,t1,...,tf],当然,更多时候这个向量是用 t0:dt:tf 这样的形式来生成。 需要注意,这个时间向量可以是递增的,也可以是递减的,递减的情况对应于沿着负时间轴求解微分方程。

参考代码: function zdy0 = [11740 272 1647 0];ode45(@odefun,[0 90],y0)function dy = odefun(t,y)dy = zeros(4,1);dy(1)=-(25*y(2)/(11745000-y(3)-y(4)))*y(4);dy(2)=(25*y(2)/(11745000-y(3)-y(4)))*y(4)-0.13*y(2);dy(3)=0.13*y(2)-0.05*...

这张图来自于MATLAB 技术论坛,这是一个非常有价值的网站,里面高手云集,希望你可以进去看看,里面有非常详细的关于ODE的介绍 http://www.matlabsky.com/thread-528-1-1.html

t>=0即可用ode45,它的物理意义类似时间,但也不局限于时间。你的问题比较模糊。 满意请采纳。

ode45是用4阶方法提供候选解,5阶方法控制误差,是一种自适应步长的方法。而我们平时用的4阶和5阶龙格库塔法的公式中步长是给定的。具体算法和原理你可以看Dormand, J. R. and P. J. Prince, "A family of embedded Runge-Kutta formulae," J. C...

function [x,y]=runge_kutta1(ufunc,y0,h,a,b) %参数表顺序依次是微分方程组的函数名称,初始值向量,步长,时间起点,时间终点, n=floor((b-a)/h); %求步数 x(1)=a; %时间起点 y(:,1)=y0; %赋初值,可以是向量,但是要注意维数 for ii=1:n x(ii...

t>=0即可用ode45,它的物理意义类似时间,但也不局限于时间。你的问题比较模糊。

使用ode45解微分方程组,可以用下列格式来求解。 [t,x]=ode45(odefun,tspan,x0) 式中:odefun——给定微分方程组的自定义函数;tspan——自变量t的范围,即【t0,tf】;x0——x的初值向量,即x1(0),x1'(0),x2(0),x2'(0),x3(0),x3'(0) ...

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com