我在编matlab程序的过程中,需要用ode45解一个一阶微分方程组,怎么做呢???

我在编matlab程序的过程中,需要用ode45解一个一阶微分方程组,关键问题是这个方程组的系数需要前面的程序传进去,所以我不会用,请教大家怎么办呢... 我在编matlab程序的过程中,需要用ode45解一个一阶微分方程组,关键问题是这个方程组的系数需要前面的程序传进去,所以我不会用,请教大家怎么办呢 展开
 我来答
百度网友a6fef20
2009-03-29 · TA获得超过886个赞
知道小有建树答主
回答量:159
采纳率:100%
帮助的人:82.3万
展开全部
只告诉你调用ode45的方法
[x,y]=ode45('odex',[t0,tf],y0,tol,trace)
odex代表定义函数f(x,y)的m文件名;
t0,tf分别为积分的初值和终值;
y0是初始状态的列向量;
tol是控制解的精度,可省略,缺省值为1E-6;
trace决定求解过程中中间结果是否省略,缺省值为0,表示不显示。

举个应用的例子:
解y'=y-2*x/y,y(0)=1

先编个M函数文件,比如命名为pp.m
function dy=pp(x,y)
dy=[y-2*x/y];

然后只需使用命令:
[x,y]=ode45('pp',[0 20],1) 即可求解
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
日向淳正
2009-03-30 · TA获得超过2811个赞
知道大有可为答主
回答量:2770
采纳率:0%
帮助的人:1400万
展开全部
我来解答你的关键问题:将之前主程序计算出来的系数用global cof定义,再在ode45的子函数里同样定义global cof,这样就能把值计算出来并且传递进去了.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式