用matlab解常微分方程组,为什么会出错?调用的是dsolve的函数.

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/07 15:31:44
用matlab解常微分方程组,为什么会出错?调用的是dsolve的函数.用matlab解常微分方程组,为什么会出错?调用的是dsolve的函数.用matlab解常微分方程组,为什么会出错?调用的是ds

用matlab解常微分方程组,为什么会出错?调用的是dsolve的函数.
用matlab解常微分方程组,为什么会出错?调用的是dsolve的函数.

用matlab解常微分方程组,为什么会出错?调用的是dsolve的函数.
提供一点信息供楼主参考:
1、使用dsolve求微分方程的解析解,只在一些比较简单的情况下能得到结果,很多情况下难以求出显式解.
2、在MATLAB 6.可以求出,用时约一分钟,但表达式过于复杂,根本没有实用价值.
3、在R2012b上求解,花了十几分钟仍为求出,内存消耗越来越大,不得不中止.但求解过程中并未报错,不知道楼主用的什么版本?
4、6.5和2012b所用符号运算内核不同,前者是Maple,后者是MuPad.个人感觉,总体上前者优于后者.
5、根据在不同版本上求解析解的结果,建议求数值解(后面给出参考解答).
6、建议以后楼主提问时,不要简单的贴图片了事,至少考虑把调用的命令用文本方式贴出来,避免回答问题的人重新录入的无谓劳动.
dX=inline('[2*(x(2)-x(1))+1; 3.4*(x(3)-x(2))+2.3*(x(1)-x(2))-3.6*(x(2)-1); 3.4*(x(2)-x(3))]','t','x');
ode45(dX,10,[3 3 2])