24小时热门版块排行榜    

查看: 3693  |  回复: 21

ybnav

银虫 (小有名气)

[交流] 【求助】向各位大侠求助matlab求解微分方程组遇到的一个问题 已有7人参与

向各位大侠求助matlab求解微分方程组遇到的一个问题:
假设有以下的微分方程组

u'(t)=-a*f1(t)*y(t);
v'(t)=-b*v(t)+a*f1(t)*y(t);
w'(t)=b*v(t);
x'(t)=-a*f2(t)*v(t)+a*f1(t)*y(t)+a*f3(t)*y(t)+c*y(t);
y'(t)= a*f2(t)*v(t) - a*f1(t)*y(t) - a*f3(t)*y(t) - c*y(t);

其中  f1(t)=0 if u(t)=0
                 =1 if u(t)>0;
         f2(t)=0 if x(t)=0
                 =1 if x(t)>0;
          f3(t)=0 if v(t)=0
                 =1 if v(t)>0;
          a=1;b=0.1;c=0.5;
且u(0)=1000;v(0)=1;w(0)=0;x(0)=200;y(0)=0.现在要得到各函数随t的变化曲线,如果微分方程组中没有f1(t),f2(t),f2(t)这三个方程,那么在matlab中可以直接用ode来得到,但是现在有这三个方程,我就没办法了,试了好几种方法都没用,想请教各位高手,在matlab下怎么才能求解这个方程?

[ Last edited by ybnav on 2011-3-11 at 22:27 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai

版主 (职业作家)

我没头衔

优秀版主优秀版主优秀版主

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by ybnav at 2011-03-11 13:18:24:
向各位大侠求助matlab求解微分方程组遇到的一个问题:
假设有以下的微分方程组

u'(t)=-a*f1(t)*z(t);
v'(t)=-b*v(t)+a*f1(t)*z(t);
w'(t)=b*v(t);
x'(t)=-a*f2(t)*v(t)+a*f1(t)*y(t)+a*f3(t)*y(t)+c*y(t); ...

把你的函数贴出来,我稍改改就可以求解了。

或者参考:http://muchong.com/bbs/viewthread.php?tid=2764636###

把微分方程写成分段函数的形式即可。
明德厚学、求是创新
2楼2011-03-11 15:42:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ybnav

银虫 (小有名气)

引用回帖:
Originally posted by xiegangmai at 2011-03-11 15:42:54:
把你的函数贴出来,我稍改改就可以求解了。

或者参考:http://muchong.com/bbs/viewthread.php?tid=2764636###

把微分方程写成分段函数的形式即可。

就是这个微分方程组
u'(t)=-*f1(t)*y(t);
v'(t)=-0.1*v(t)+*f1(t)*y(t);
w'(t)=0.1*v(t);
x'(t)=-f2(t)*v(t)+f1(t)*y(t)+f3(t)*y(t)+0.5*y(t);
y'(t)= f2(t)*v(t) -f1(t)*y(t) -f3(t)*y(t) -0.5*y(t);

其中  f1(t)=0 if u(t)=0
                =1 if u(t)>0;
         f2(t)=0 if x(t)=0
                 =1 if x(t)>0;
          f3(t)=0 if v(t)=0
                 =1 if v(t)>0;
且u(0)=1000;v(0)=1;w(0)=0;x(0)=200;y(0)=0.

只要求在matlab中画出u(t)、v(t)、w(t)、x(t)、y(t)在t的某一段区间内,比如[0,60]的曲线图,还是没想出来改怎么办,同学说可能需要迭代,我也不知道怎么办,万分感谢版主同志!

[ Last edited by ybnav on 2011-3-11 at 22:28 ]
3楼2011-03-11 17:31:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ybnav

银虫 (小有名气)

引用回帖:
Originally posted by xiegangmai at 2011-03-11 15:42:54:
把你的函数贴出来,我稍改改就可以求解了。

或者参考:http://muchong.com/bbs/viewthread.php?tid=2764636###

把微分方程写成分段函数的形式即可。

刚方程写错了,应该是

就是这个微分方程组
u'(t)=-f1(t)*y(t);
v'(t)=-0.1*v(t)+f1(t)*y(t);
w'(t)=0.1*v(t);
x'(t)=-f2(t)*v(t)+f1(t)*y(t)+f3(t)*y(t)+0.5*y(t);
y'(t)= f2(t)*v(t) -f1(t)*y(t) -f3(t)*y(t) -0.5*y(t);

其中  f1(t)=0 if u(t)=0
                =1 if u(t)>0;
         f2(t)=0 if x(t)=0
                 =1 if x(t)>0;
          f3(t)=0 if v(t)=0
                 =1 if v(t)>0;
且u(0)=1000;v(0)=1;w(0)=0;x(0)=200;y(0)=0.

只要求在matlab中画出u(t)、v(t)、w(t)、x(t)、y(t)在t的某一段区间内,比如[0,60]的曲线图,还是没想出来改怎么办,同学说可能需要迭代,我也不知道怎么办,万分感谢版主同志!

[ Last edited by ybnav on 2011-3-11 at 22:31 ]
4楼2011-03-11 17:33:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai

版主 (职业作家)

我没头衔

优秀版主优秀版主优秀版主

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by ybnav at 2011-03-11 17:33:08:
刚方程写错了,应该是

就是这个微分方程组
u'(t)=-f1(t)*z(t);
v'(t)=-0.1*v(t)+f1(t)*z(t);
w'(t)=0.1*v(t);
x'(t)=-f2(t)*v(t)+f1(t)*y(t)+f3(t)*y(t)+0.5*y(t);
y'(t)= f2(t)*v(t) -f1(t)*y(t) -f3( ...

微分方程组中没有f1(t),f2(t),f2(t)这三个方程的MATLAB函数呢?
明德厚学、求是创新
5楼2011-03-11 18:40:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ybnav

银虫 (小有名气)

引用回帖:
Originally posted by xiegangmai at 2011-03-11 18:40:53:
微分方程组中没有f1(t),f2(t),f2(t)这三个方程的MATLAB函数呢?

这三个方程的值是根据以下条件确定的:
      | 0  当u(t)=0时
f1(t)=|
          | 1 当u(t)>0时

      | 0  当x(t)=0时
f2(t)=|
          | 1 当x(t)>0时

      | 0  当v(t)=0时
f2(t)=|
          | 1 当v(t)>0时

[ Last edited by ybnav on 2011-3-11 at 19:00 ]
6楼2011-03-11 18:58:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai

版主 (职业作家)

我没头衔

优秀版主优秀版主优秀版主

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by ybnav at 2011-03-11 18:58:21:
这三个方程的值是根据以下条件确定的:
      | 0  当u(t)=0时
f1(t)=|
          | 1 当u(t)>0时

      | 0  当x(t)=0时
f2(t)=|
          | 1 当x(t)>0时

      | 0  当v(t)=0时
f2(t)= ...

我说的还不清楚吗?
你不是会算没有f(t)的情况吗?那你把不含f(t)的MATLAB命令和函数文件贴出来啊。
明德厚学、求是创新
7楼2011-03-11 19:02:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ybnav

银虫 (小有名气)

不好意思,理解错了,我寝室电脑没装matlab
实验室电脑不能上网,现在随便写一个怕有错误,我明天去实验室把matlab命令和函数文件拷出来后再发上来,今天晚上我再去请教一下周围的同学,如果实在不行只能麻烦版主救急了,真的万分感谢!
8楼2011-03-11 19:09:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

z(t)  是个啥玩意
9楼2011-03-11 20:03:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zzg_gm

银虫 (小有名气)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
这要用If语句判断,确定一些量的值然后用dsolve函数求解!要是想画图,可将求解出的函数表达式用plot命令画出(因为是一个个函数画图,只是二维的,所以用plot,而不是plot3),!你再试试,命令的格式一般的书上都有的!
当我明白我该怎样度过我今后的人生的时候,坚定执着,迈步向前。
10楼2011-03-11 20:33:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ybnav 的主题更新
普通表情 龙 兔 虎 猫 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 极限拉扯,如何抉择 +3 Isak0320 2026-10-12 5/250 2026-10-12 16:42 by Isak0320
[教师之家] 课题组会帮你通过考核么? +3 好运来~9527 2026-10-10 6/300 2026-10-12 14:55 by 简单化xn
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +4 wangyl_123 2026-10-10 7/350 2026-10-12 14:47 by chuans0923
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 22:11 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[基金申请] 入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍 +5 13108017953 2026-10-08 5/250 2026-10-10 11:15 by wdwd123
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见