24小时热门版块排行榜    

查看: 869  |  回复: 1

CQU_wjq

铁杆木虫 (著名写手)

[求助] Matlab解微分方程组 已有1人参与

想用Matlab解一组微分方程组,具体如下:
①先编辑了一个.m文件:
function dy=eq1(t,y)
dy=zeros(2,1);
dy(1)=-4/((1-y(2))^2)*((0.8+0.1*t^2)/(0.8+0.2*t^2)+Q/(sqrt(3))/(1-y(2))/(1-y(2)));
dy(2)=0.4*(y(1)-1)*(-0.86*y(2)^2+0.345*y(2)+0.515)/(0.16+0.04*t^2)/(y(2)-(1-y(1)/(2.571-y(2)-y(2)*log(1-y(2)))));
②边界条件:
t=1时,y(1)=0,y(2)=0.5;
③关于方程中的Q:
Q为一不确定常数,满足条件:t=0,y(1)=0;

如何采用龙格-库塔法解上述方程呢,先求出Q?求指导。
回复此楼

» 猜你喜欢

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

逆风奔跑。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CelestialCYJ

木虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
CQU_wjq: 金币+10, ★★★★★最佳答案 2015-01-19 16:19:57
tspan=[1 0],y0=[0 0.5],eq1要改成eq1(t,y,flag,Q),然后用ode45函数,Q通过不断的迭代,最终找到满足y1(t=0)=0的Q,就可以把这组微分方程解出来了,至于Q怎么寻优,你可以用各种方法,比如MATLAB自带的fminsearch函数,等等
2楼2014-12-27 22:53:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 CQU_wjq 的主题更新
信息提示
请填处理意见