| 查看: 986 | 回复: 3 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【求助】ode45数值求解常微分方程总是错,找不出原因
|
|||
|
程序如下:S1=0.4; S2=0.8; y=zeros(42,3); y(1,1)=6e10; y(2,1)=4e10; y(3,1)=0; for i=0:5; for j=1:7 if(j==6)|(j==7) [t,y]=ode45('tumor',[i*7+j i*7+j+1],[y(i*7+j,1) y(i*7+j,2) y(i*7+j,3)]); else a=y(i*7+j,1); y(i*7+j,1)=S1*a; b=y(i*7+j,2); y(i*7+j,2)=S2*b; y(i*7+j,3)=(1-S1)*a+(1-S2)*b; [t,y]=ode45('tumor',[i*7+j i*7+j+1],[y(i*7+j,1) y(i*7+j,2) y(i*7+j,3)]); end end end plot(t,y(1, ,'*',t,y(2, ,'.',t,y(3, ,'+');错误为:Index exceeds matrix dimensions. Error in ==> number1 at 12 [t,y]=ode45('tumor',[i*7+j i*7+j+1],[y(i*7+j,1) y(i*7+j,2) y(i*7+j,3)]); 我估计是向量传递出错了 发现ode45返回的是t和y(:,1) y(:,2) y(:,3)的列向量, 如果想得到向量的最后一个值应该怎么办? [ Last edited by liangbao on 2010-11-25 at 09:51 ] |
» 猜你喜欢
表哥与省会女结婚,父母去帮带孩子被省会女气回家生重病了
已经有12人回复
依托企业入选了国家启明计划青年人才。有无高校可以引进的。
已经有14人回复
江汉大学解明教授课题组招博士研究生/博士后
已经有3人回复
AI 太可怕了,写基金时,提出想法,直接生成的文字比自己想得深远,还有科学性
已经有11人回复
同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗
已经有10人回复
依托企业入选了国家启明计划青年人才。有无高校可以引进的。
已经有11人回复
» 抢金币啦!回帖就可以得到:
西湖大学2026年秋季入学物理学、光学、电子信息方向博士生有名额速来!!!
+2/238
贺电中定位于“积极作用”,是不是对基金委工作不够满意?
+1/98
石河子大学化学化工学院CJ学者领衔分子炼油团队招收博士、硕士。【接收调剂】
+1/85
上海交通大学大气环境科学课题组招收2026年入学博士生
+1/67
2025难忘的时刻
+1/62
感谢小木虫的缘分
+1/38
罗格斯大学纽瓦克校区(Rutgers-Newark) 招收 PHD,计算材料物理方向
+1/36
有没有人做过这种结构的顺式体向反式体的转化?
+1/34
中国农业大学安杰课题组招聘科研助理(表现优异者可提供读博机会)
+1/30
上海交大药学院侯四化课题组招收2名2026年秋季入学申请-考核制博士生
+1/26
澳大利亚麦考瑞大学(Macquarie University)国际博士硕士全额奖学金-计算机-26年中开学
+1/16
香港中文大学(深圳)陈筱萌 课题组招生公告(博士 / 博后 / 硕士 / RA)
+1/15
【青岛大学】2026年生物与医药申请考核制博士生招生(含少数民族骨干人才)
+1/13
澳门大学生物医学影像实验室诚招博士生(2026秋季入学)
+1/7
苏州大学国家级青年人才团队2026年博士招生(有机光电功能材料方向)
+1/7
哈工大(深圳)国家级青年人才 钟颖教授课题组 新增26级博士名额!欢迎报名!
+1/5
香港中文大学(深圳)陈筱萌 课题组招生公告(博士 / 博后 / 硕士 / RA)
+1/4
澳科大招收2026年秋季药物递送/生物材料方向全奖博士研究生(3月5日18:00截止)
+1/4
美国密苏里大学“柔性电子”课题组诚聘博士研究生和博士后
+1/1
大连海事大学船舶洁净能源研究中心2026年博士研究生招生启事
+1/1
4楼2010-11-26 08:34:13
2楼2010-11-25 20:01:10
|
恩,谢谢 我这样改,运行通过了 您看看,没有什么对不? S1=0.4; S2=0.8; y=zeros(100,42); y(1,1)=6e10; y(1,2)=4e10; y(1,3)=0; for i=0:5; for j=1:7 if(j==6)|(j==7) tspan=i*7+j:0.05:i*7+j+1; [t,p]=ode45('tumor',tspan,[y(i*7+j,1) y(i*7+j,2) y(i*7+j,3)]); else y(i*7+j,1)=S1*y(i*7+j,1); y(i*7+j,2)=S2*y(i*7+j,2); y(i*7+j,3)=((1-S1)/S1)*y(i*7+j,1)+((1-S2)/S2)*y(i*7+j,2); tspan=i*7+j:0.05:i*7+j+1; [t,p]=ode45('tumor',tspan,[y(i*7+j,1) y(i*7+j,2) y(i*7+j,3)]); end plot(t,p(:,1),'*',t,p(:,2),'.',t,p(:,3)); hold on; y(i*7+j+1,1)=p(21,1); y(i*7+j+1,2)=p(21,2); y(i*7+j+1,3)=p(21,3); end end |
3楼2010-11-25 20:38:04













,'*',t,y(2,
回复此楼