24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 2307  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

brucexmc

新虫 (正式写手)

[求助] 求教ode45计算流程问题 已有2人参与

大家好,本人最近利用Matlab的ODE45函数求解微分方程[t,y]=ode45(@fun,tspan,t0),在fun函数中用写文件命令fsprint()记录了一些需要使用的参数,最后发现ODE45计算过程中时间项t不是单调增加,而是有时候会往回走一段儿,比如[0, 0.1, 0.2, 0.3, 0.25, 0.28, 0.3, 0.35, 0.4],但是最后输出的[t,y]中的t确实单调增大的。
所以想问一问各位有没有谁比较懂这个,ode45的计算流程是什么样的呢?
回复此楼

» 猜你喜欢

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

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

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
你说的这种情况比较少见。
麻烦给出完整代码。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2014-11-27 20:29:38
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

brucexmc

新虫 (正式写手)

求大神指教啊,给自己顶一下下吧!
2楼2014-11-27 20:11:20
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

brucexmc

新虫 (正式写手)

引用回帖:
3楼: Originally posted by 月只蓝 at 2014-11-27 20:29:38
你说的这种情况比较少见。
麻烦给出完整代码。

非常感谢您的回复,我的调用函数代码为:
clear all;
clc;
options=odeset('reltol',1e-5);
[t,y]=ode45(@fun,[0 2],[1 -1],options);
plot(t,y(:,1),t,y(:,2));

函数fun的定义为
function dx=fun(t,x)

if t<1
    a=0.1;
else
    a=0.2;
end

%数据写入文件
fdata=fopen('data.txt','a');
fprintf(fdata,'%f\n',t);
fclose(fdata);

dx=[x(2);1+a*x(2)];

经过计算之后,在t=1左右就会出现t值先变小,之后又变大的现象,下图所示为记录得到的t的变化情况。
求教ode45计算流程问题
方程时间序列.jpg

4楼2014-11-27 21:20:06
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

引用回帖:
4楼: Originally posted by brucexmc at 2014-11-27 21:20:06
非常感谢您的回复,我的调用函数代码为:
clear all;
clc;
options=odeset('reltol',1e-5);
=ode45(@fun,,,options);
plot(t,y(:,1),t,y(:,2));

函数fun的定义为
function dx=fun(t,x)

if t<1
    ...

MATLAB求解结果无误。
代码中
fdata=fopen('data.txt','a');
fprintf(fdata,'%f\n',t);
其中data.txt数据是什么。

» 本帖已获得的红花(最新10朵)

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
5楼2014-11-27 22:07:05
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 求调剂推荐 材料 304 +18 荷包蛋hyj 2026-03-26 18/900 2026-03-31 18:08 by 544594351
[考研] 本2一志愿C9-333分,材料科学与工程,求调剂 +9 升升不降 2026-03-31 9/450 2026-03-31 18:01 by 无际的草原
[考研] 一志愿华东理工大学,080500学硕,317分,求调剂 +8 s1145 2026-03-31 8/400 2026-03-31 17:37 by 唐沐儿
[考研] 329求调剂,一志愿西北工业大学,材料工程(085601) +6 小小机灵虫 2026-03-29 12/600 2026-03-31 16:58 by 记事本2026
[考研] 考研调剂求助 +7 13287130938 2026-03-31 7/350 2026-03-31 16:39 by 690616278
[考研] 311求调剂 +9 蓝月亮亮 2026-03-30 9/450 2026-03-31 16:32 by yedezhan
[考研] 总分322求生物学/生化与分子/生物信息学相关调剂 +6 星沉uu 2026-03-26 7/350 2026-03-31 10:19 by GdShizy
[考研] 08工科,295,接受跨专业调剂 +6 lmnlzy 2026-03-30 6/300 2026-03-31 10:04 by cal0306
[考研] 293分求调剂,外语为俄语 +5 加一一九 2026-03-31 5/250 2026-03-31 09:39 by zhshch
[考研] 22408 359分调剂 +4 Qshers 2026-03-27 8/400 2026-03-31 08:53 by Qshers
[考研] 085701求调剂初试286分 +5 secret0328 2026-03-28 5/250 2026-03-30 12:54 by fangnagu
[考研] 311求调剂 +10 lin0039 2026-03-26 10/500 2026-03-30 10:26 by herarysara
[考研] 327求调剂 +6 汲亦昊 2026-03-29 6/300 2026-03-29 13:40 by peike
[考研] 352分-085602-一志愿985 +5 海纳百川Ly 2026-03-29 5/250 2026-03-29 09:57 by Sjndkwm
[考研] 316求调剂 +7 江辞666 2026-03-26 7/350 2026-03-28 21:28 by sanrepian
[考研] 085701环境工程,267求调剂 +16 minht 2026-03-26 16/800 2026-03-28 12:16 by zllcz
[考研] 283求调剂 +7 A child 2026-03-28 7/350 2026-03-28 12:05 by zllcz
[考研] 085405 考的11408求各位老师带走 +3 Qiu学ing 2026-03-28 3/150 2026-03-28 09:19 by 乐呵呵的追梦人
[考研] 材料求调剂 +5 .m.. 2026-03-25 5/250 2026-03-27 11:08 by 不吃魚的貓
[硕博家园] 北京林业大学硕导招生广告 +6 kongweilin 2026-03-26 8/400 2026-03-27 10:18 by FF_16
信息提示
请填处理意见