Matlab纸张绘图
此代码中有两个错误:
在定义函数方程代码中:
楼主:dxdt =[x(1)*(1-x(1))*(2 * x(3)+1;x(2)*(1-x(2))*(3 * x(3)+1;x(3)*(1-x(3))*(-1 * x(1)-x(2)-x(1)* x(2)+4)];
修正后:dxdt =[x(1)*(1-x(1))*(2 * x(3)+1);x(2)*(1-x(2))*(3 * x(3)+1);x(3)*(1-x(3))*(-1 * x(1)-x(2)-x(1)* x(2)+4)];
错误原因:在前两个分号“;”中之前,缺少右括号“)”。
函数的x需要像x(1) x(2) x(3)这样传递三个参数,但是楼主在主程序中调用ode45函数时,只传递了I和J两个参数,可以引入变量K。以x-y-z为例,改为如下(修改部分加粗),其他部分修改相同:
%z-y-x
对于i=0:0.1:1
对于j=0:0.1:1
对于k=0:0.1:1
[T,Y]=ode45('微分',[0 5],[I j k]);
图(1)
网格打开
plot3(Y(:,1),Y(:,2),Y(:,3);
继续
结束
结束
结束