马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
下面这段计算:
B1=[936 850 1195 773 1007 604];
B2=[2.3 4.2 7.5 4.5 3.7 0.5];
B3=[116 230 139 202 122 119];
B4=[782 710 999 647 842 505];
B5=[2.8 5 9 5.3 4.4 0.6];
B6=[546 702 660 624 579 430];
Z1=[936 850 1196 773 1007 605];
Z2=[0.17 0.33 0.4 0.38 0.25 0.06];
S=zeros(6,1);
for i=1:6
a1=B1(i,1);
a2=B2(i,1);
a3=B3(i,1);
a4=B4(i,1);
a5=B5(i,1);
a6=B6(i,1);
z1=Z1(i,1);
z2=Z2(i,1);
syms s
f=sym('(a1*sin(acos(-tan(z1-s)*tan(z2)))+a2*acos(-tan(z1-s)*tan(z2))+a3)*cos(s)+(a4*sin(acos(-tan(z1-s)*tan(z2)))-a5*acos(-tan(z1-s)*tan(z2)))*sin(s)+a6');
d=diff(f);
d=double(d);
d=subs(d,a1,B1(i+1,1));
d=subs(d,a2,B2(i+1,1));
d=subs(d,a3,B3(i+1,1));
d=subs(d,a4,B4(i+1,1));
d=subs(d,a5,B5(i+1,1));
d=subs(d,a6,B6(i+1,1));
d=subs(d,z1,Z1(i+1,1));
d=subs(d,z2,Z2(i+1,1));
%%定义精度,显示为小数
digits(4);
vpa(d);
solve('d=0','s');
S(i,1)=s;
end
出现问题如下:
??? Error using ==> eval
Undefined function or variable 'a1'.
Error in ==> sym.double at 45
D = reshape(eval(X),siz);
但是
>> a1
a1 =
936
是正确的。
这些问题怎么解决呢?请教大家,这里先谢谢了 ^^ |