24小时热门版块排行榜    

查看: 1261  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

不吃草的兔子

新虫 (小有名气)

[求助] matlab微分方程组数值计算 已有2人参与

Matlab中能否得到数值解?如果可以还望劳神给个代码,定当感激不尽。初来乍到就这么点儿金币

matlab微分方程组数值计算
FM)H)_}}[8@_Q]9}{1U1W_O.jpg
回复此楼

» 猜你喜欢

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

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

刘畅的用户名

木虫 (小有名气)

可以直接用matlab 的ode 45等函数来求解,具体的使用可以查看帮助。

[ 发自小木虫客户端 ]
3楼2014-12-01 18:06:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

shikang999

新虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
不吃草的兔子: 金币+5, 有帮助, 实在是没穷。我用MATLAB做出来了。谢谢了 2014-12-05 10:28:04
如果是作业的话,建议将y3约去,得到一个二阶的y2与一阶的y1,然后把导数项展开,然后组装到一个方程组里面,根据边界条件设置相应的值,最后求解一个线性方程组即可。当然为了保证精度,可以采用不同步长求解,前后两次计算结果的比较来得到结果!
PS:这样是纯写代码,几乎不调用任何函数。其求解思路和数值分析书上两点边值问题思路一致!时间到了,先去吃饭去了!
我还是那个我,过去如此,未来亦如此!
2楼2014-12-01 16:50:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
不吃草的兔子: 金币+4, ★★★很有帮助, 虽然没用上还是非常感谢。 2014-12-05 10:28:44
边界条件只需要3个就够了,“x=5,y'=0”这一条件应该是多余的。边值微分方程问题(BVP),用1stOpt求解(假设a、b、c已赋值):
CODE:
Constant a=1,b=0.5,c=2;
Variable x=[0,5],y1=25,y3=0,y2=[,800];
Plot x[x],y1,y2;
ODEFunction y1'=a*(y2-y1);
            y2'=y3;
            y3'=b*(y2-y1)+c*(y2-30);

边值估算:
        y2(x=0): 30.1072095562902
matlab微分方程组数值计算-1
c134.jpg

4楼2014-12-02 20:11:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

不吃草的兔子

新虫 (小有名气)

引用回帖:
2楼: Originally posted by shikang999 at 2014-12-01 16:50:43
如果是作业的话,建议将y3约去,得到一个二阶的y2与一阶的y1,然后把导数项展开,然后组装到一个方程组里面,根据边界条件设置相应的值,最后求解一个线性方程组即可。当然为了保证精度,可以采用不同步长求解,前后 ...

看你头像很眼熟。是不是在哪里见过???言归正传。。。这不是作业,我课题要算的,我只是把一个带有复杂变量的二阶常微分方程组简化成这样一个模式了。就是想知道这个方程组到底能不能用matlab解出来。你说的这个展开导数相是要自己离散吗?以前没接触过看不懂啊。我想要的结果就是现在四楼做个这个效果、、只不过他用的1stopt、、我就是想用matlab做出来
5楼2014-12-02 21:26:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见