| 查看: 962 | 回复: 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 ] |
» 猜你喜欢
请教限项目规定
已经有5人回复
拟解决的关键科学问题还要不要写
已经有8人回复
最失望的一年
已经有16人回复
存款400万可以在学校里躺平吗
已经有33人回复
求助一下有机合成大神
已经有3人回复
求推荐英文EI期刊
已经有5人回复
26申博
已经有3人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
基金申报
已经有6人回复
疑惑?
已经有5人回复
» 抢金币啦!回帖就可以得到:
上海87年GG诚求女友
+1/172
上海87年GG诚求女友
+1/172
中南林科大-自然资源与生态环境管理-博士招生(导师本人发布)
+1/87
深圳大学水科学中心HydroS课题组招收化学/环境相关专业博士生1名(2026年入学)
+1/81
北京大学季者课题组招聘博士后和科研助理/化学/化生/生命科学/物理/工程等
+1/78
上海交通大学变革分子学中心申涛课题组2026秋季入学推荐-考核制博士招生(有机)
+1/78
信息工程大学教授团队网络空间安全专业博士招生【2026年1月31日报名截止】
+1/75
中国地质大学(武汉)地质学、地质资源与地质工程、资源与环境方向招生,请尽快联系!
+1/70
[长期合作招募] 同济大学肖倩老师团队诚邀港澳学者学术交流
+1/34
【教授本人】南佛罗里达大学化学系刘文奇课题组 2026 Fall 招收有机/超分子方向博士生
+1/30
专科起点双非硕士,申博求建议
+1/21
西南大学化学化工学院彭云贵教授课题组招有机化学博士研究生
+2/18
中国科学院大连化学物理研究所-环境催化工程研究组(DNL 902组)事业编外项目聘用人员
+2/14
顺磁计算交流
+1/13
墨子实验室理论模拟研究组诚聘海内外优秀人才
+1/10
2026 年南方医科大学基础医学院李琳课题组招收“申请-审核” 博士研究生
+1/5
南方科技大学田雷蕾课题组招收2026年博士生
+1/4
河北工业大学层状材料与器件团队诚聘二维材料与原位电子显微学方向青年教师与博士后
+1/3
生殖医学与子代健康全国重点实验室华鹏课题组招收博士后及研究生(长期有效)
+1/2
【博士后/科研助理招聘-北京理工大学-集成电路与电子学院-国家杰青团队】
+1/2
|
恩,谢谢 我这样改,运行通过了 您看看,没有什么对不? 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
2楼2010-11-25 20:01:10
4楼2010-11-26 08:34:13













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