| 查看: 2345 | 回复: 4 | |||
[交流]
【求助完毕】用ode逆向求解微分方程问题
|
|
在Matlab中用ode45函数求解微分方程,已知终端时刻的值y(tf),要反向积分求初值y(0),请问高手应该注意什么?方程中含有随时间变化的参数。 例如: tspan=[5 0]; %%%%% (时间需 反向) dy1dt=-f*y(1)+g*y(2); %%%%%%% f 和g都是随时间变化的函数 dy2dt=f^2*y(1); %%% f 和 g 可以 数值 求得,需要实时 代入微分方程中求解 [ Last edited by cenwanglai on 2011-4-3 at 11:31 ] |
» 猜你喜欢
地球科学部D01口青年基金,最低几A几B几C才能有几率中呀。
已经有5人回复
航天502所 高瑛珂博士 婚内征婚 欺骗女性开房
已经有27人回复
26/27申博
已经有4人回复
博士申请
已经有5人回复
» 本主题相关价值贴推荐,对您同样有帮助:
请高手帮忙求解一个常微分方程的题目
已经有6人回复
帮忙求解一道微分方程的题目
已经有7人回复
【求助】matlab 求解微分方程中的未知参数
已经有20人回复
【求助】向各位大侠求助matlab求解微分方程组遇到的一个问题
已经有21人回复
【求助】MATLAB 有限差分法(FDM)求解偏微分方程
已经有22人回复
【求助】积分微分方程matlab求解
已经有6人回复
【求助】Python 中 求解微分方程 odeint 的用法
已经有11人回复
【求助】matlab怎么求解偏微分方程组啊,先谢谢了
已经有13人回复
【求助】求教这种微分方程的详细求解过程
已经有14人回复
【求助】如何用matlab求解这个微分方程?【已解决】
已经有3人回复
» 抢金币啦!回帖就可以得到:
【26年9月入学】中国石油大学(北京) 化学工程专业招2026级学术博士1名
+1/273
清华大学深圳国际研究生院周栋课题组博士研究生招聘
+1/177
山东征女友,坐标济南
+1/166
温州医科大学沈建良课题组招聘2026级博士生
+1/100
【原创正式公开】爻0理论:四版完整进化 · 精细结构常数纯拓扑推导 · 四次投稿记录
+1/87
香港科技大学(广州)章勇课题组招收钙钛矿太阳能电池方向博士生、博士后
+1/82
北京航空航天大学-仿生界面材料科学全国重点实验室郭林院士团队诚聘博士后
+1/81
中国科学院山西煤炭化学研究所环境科方向招线上实习生
+1/32
寻找做兼职的同学,长期的(长三角:血管介入医疗器械方面兼职)
+1/30
海南大学国家高层次人才团队硕、博士招生
+1/28
【通知】北京信息科技大学仪器科学与光电工程学院招收博士研究生(2026),还有名额!
+1/28
深圳技术大学(深圳大学应用技术学院)2026年博士研究生招生-光机电工程与应用专业
+2/24
温州医科大学王毅课题组招聘2026级博士生
+1/9
“双一流”南京邮电大学--海优团队--招收2026博士生1-2名(6月15日前有效)
+1/9
上海大学微电子学院杨军教授团队招聘带编专任教师
+1/6
电子科技大学材料学院SFT创新中心招收准备考研和读博的科研助理 理工医交叉方向
+1/4
炎症因子多指标联检 | Luminex和MSD灵敏度和检测限有什么区别?
+1/4
招若干有分子生物,细胞培养,动物实验背景的人员(中山大学)
+1/2
储能与电子材料课题组 招收硕士 or 博士研究生——以色列理工-GTIIT联培
+1/1
【博士招生】武汉科技大学招收材料、化工、环境、冶金类2026年“申请-考核”制博士生
+1/1
在里面不是高手如云吗?就急啊!!
|
用ode(例如 ode45 ; ode113 )求解微分方程,如果已知终端条件,进行反向积分时,除了把积分区间设置之外,还需要注意什么。今天编写了一个程序怎么结果都会出错,请高手指点。 因为中间参数随时间变化,不知道问题出在哪儿: ft = linspace(5,0,25); % Generate t for f f = ft.^2 - ft - 3; % Generate f(t) gt = linspace(6,1,25); % Generate t for g g = 3*sin(gt-0.25); % Generate g(t) Tspan = [5 1]; % Solve from t=5 to t=1 % 计算范围修改 IC = -0.1518; % y(t=5) --终端y值 [T Y] = ode45(@(t,y) myode(t,y,ft,f,gt,g),Tspan,IC); % Solve ODE figure(1) plot(T,Y) --------------------------------------------- function dydt = myode(t,y,ft,f,gt,g) %%%%% 中间参数变化 f =interp1(ft,f,t); % Interpolate the data set (ft,f) at time t -----------这儿需要修改吗??如何变? g =interp1(gt,g,t); % Interpolate the data set (gt,g) at time t-----------这儿需要修改吗??如何变? dydt = -f.*y + g; % Evalute ODE at time t----------原微分方程 应该无需改动吧?? %%%%%%%%%% 运算结果错误,量级都差太远,请高手快点救急啊!! ---------------------------------------------------------------- 又试验了一下,貌似如果是常系数、或者方程简单就容易求解,应该改变积分区间和初值就没问题。 只是现在必选考虑变参数情况,请高手帮忙啊…… 分析上面的主要问题出在哪儿?? |
2楼2010-11-19 16:31:45
3楼2010-11-19 23:18:07
4楼2010-11-20 11:24:25
5楼2010-11-23 17:02:39











回复此楼