作者cloud1128 (卡普顿。J)
看板MATLAB
标题[问题]非线性方程组
时间Thu Nov 10 19:51:30 2011
时间 t =0:0.2:10
想求解以下的x
如:
F=[x(1)-0.5.*cos(x(3))
x(2)-0.5.*sin(x(3))
x(4)+0.5.*cos(x(6))-1;
x(5)+0.5.*sin(x(6))-1+0.1*t;
x(1)+0.5*cos(x(3))-1+0.5*cos(x(6));
x(2)+0.5*cos(x(3))-1+0.1*t+0.5*cos(x(6))];
-----------------------------------------------------------------------------------------
原本将funcion打在m-file中
function F = myfunc(x,t)
F=[x(1)-0.5*cos(x(3))
x(2)-0.5*sin(x(3))
x(4)+0.5*cos(x(6))-1;
x(5)+0.5*sin(x(6))-1+0.1*t;
x(1)+0.5*cos(x(3))-1+0.5*cos(x(6));
x(2)+0.5*cos(x(3))-1+0.1*t+0.5*cos(x(6))];
接着在命令视窗中以 for 回圈写
for t=0:0.2:10
x0=[0.5;0;0;1;0.5;pi/2];
q1=fsolve(@myfunc,x0);
end
但出现了以下
??? Input argument "t" is undefined.
我该如何去修改并完成?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.124.33.120
1F:推 Raymond0710:你的t宣告global 把myfunc(x,t)改myfunc(x) 11/10 22:36
2F:推 Raymond0710:funtion里面也要加一行 global t 11/10 22:40