24小时热门版块排行榜    

查看: 3504  |  回复: 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的回帖

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的回帖
查看全部 22 个回答

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的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 2JOx3r2CYEgw 2026-08-22 5/250 2026-08-23 15:18 by KM5EcsNQRBPn
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-22 4/200 2026-08-23 14:57 by KM5EcsNQRBPn
[公派出国] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-21 6/300 2026-08-23 14:45 by KM5EcsNQRBPn
[基金申请] 2026国自然函评费到账 +15 羊腰板 2026-08-21 16/800 2026-08-23 10:45 by process2012
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-21 9/450 2026-08-23 10:44 by IXZuIJ2Q7OVy
[基金申请] 让我中一个面上吧! +12 大萍1987 2026-08-20 14/700 2026-08-23 10:30 by wrm
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 DpSrDtM079iu 2026-08-22 5/250 2026-08-23 04:07 by OEbVnUOu01ol
[基金申请] 范进中举一文的中心思想 +3 zjuhero 2026-08-22 4/200 2026-08-22 20:02 by mycsru
[教师之家] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 2JOx3r2CYEgw 2026-08-21 4/200 2026-08-22 16:52 by sunzitan
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 放榜前的不淡定 40+4 snowwithsea 2026-08-19 14/700 2026-08-21 23:51 by cratir
[基金申请] 建议基金发布提前给出明确的时间点 +10 kulium 2026-08-21 13/650 2026-08-21 21:58 by alongwaytogo
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[基金申请] 时间戳又变了 +13 wuchongjun 2026-08-20 19/950 2026-08-21 17:21 by 紫杉醇
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[论文投稿] 投稿咨询 +5 wwm09 2026-08-17 7/350 2026-08-21 10:11 by 期刊论文帮手
[基金申请] 今天系统多次维护,明天很可能放榜! +10 zju2000 2026-08-16 11/550 2026-08-20 20:02 by cl479861084
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见