这是我用fsolve函数求解非线性方程的的matlab程序
function yy3=dds1(X)
l0=7096;
l1=8980;
l2=3000;
l3=600;
l4=8000;
l8=8000;
l5=5000;
l6=5000;
l7=5000;
l9=9000;
xp=-5400;
zp=-3000;
d=3000;
theta2=2*pi/3;
q1=500;q2=-1000;q3=0;q4=0;q5=30;
theta1=acos((l2^2+l0^2-(l1+q1)^2)/2/l2/l0);
theta3=theta2-theta1;
yy3(1)=((l2+l3)*cos(theta3)-l5/2*sin(X(4))-X(1))^2+(q5-l5/2+l5/2*cos(X(4))-X(2))^2+((l2+l3)*sin(theta3)+X(3))^2-l6^2; %one
yy3(2)=((l2+l3)*cos(theta3)+l5/2*sin(X(4))-X(1))^2+(q5+l5/2-l5/2*cos(X(4))-X(2))^2+((l2+l3)*sin(theta3)+X(3))^2-l6^2; %two
yy3(3)=X(2)-l8*sin(X(4))*cos(X(5))-q4; %three
yy3(4)=((l2+l3)*cos(theta3)-l4+l8*cos(X(4))*cos(X(5))-X(1))^2+((l2+l3)*sin(theta3)+l8*sin(X(5))+X(3))^2-(l7+q2)^2; %four
yy3(5)=(d/l6*(l5/2*sin(X(4))+X(1)-(l2+l3)*cos(theta3))+(l2+l3)*cos(theta3)-xp-l5/2*sin(X(6)))^2+(d/l6*(-l5/2*cos(X(4))+X(2)-q5+l5/2)+q5-l5/2+l5/2*cos(X(6)))^2+(d/l6*(X(3)+(l2+l3)*sin(theta3))-(l2+l3)*sin(theta3)-zp)^2-(l9+q3)^2;
yy3(6)=(d/l6*(-l5/2*sin(X(4))+X(1)-(l2+l3)*cos(theta3))+(l2+l3)*cos(theta3)-xp+l5/2*sin(X(6)))^2+(d/l6*(l5/2*cos(X(4))+X(2)-q5-l5/2)+q5+l5/2-l5/2*cos(X(6)))^2+(d/l6*(X(3)+(l2+l3)*sin(theta3))-(l2+l3)*sin(theta3)-zp)^2-(l9+q3)^2;
>> fsolve('dds1',[3600 30 -4000 0.01 0.1 0.01])
下面是运行结果:
Optimization terminated: norm of relative change in X is less
than max(options.TolX^2,eps) and sum-of-squares of function
values is less than sqrt(options.TolFun).
ans =
1.0e+003 *
3.6012 -0.0000 -4.0185 -0.0000 0.0001 -0.0000
请问高手这个怎么解决?