嗨,我需要使用 sym 计算一些向量表达式,然后将结果转换为数字。我需要转换这个脚本的底部,以便将符号转换为数字,我不知道该怎么做,我尝试的任何事情都失败了。我总是遇到错误。我需要你的帮助。
这个脚本应该这样做:
syms v1 v2 v3
syms v1x v1y v1z v2x v2y v2z v3x v3y v3z
syms x1 y1 z1 x2 y2 z2 x3 y3 z3
syms i j k
%%Calcul
v1x = v1 * i ;
v1y = v1 * j ;
v1z = v1 * k ;
v2x = v2 * i ;
v2y = v2 * j ;
v2z = v2 * k ;
v3x = v3 * i ;
v3y = v3 * j ;
v3z = v3 * k ;
x_n = zeros(1,3);
y_n = zeros(1,3);
z_n = zeros(1,3);
disp( 'Introduceti punctele de aplicatie, unghiurile in [grade] si coordonatele in [m]:' );
for i=1:3
x_n(i) = input([ 'x(' ,num2str(i), ') = ' ]);
y_n(i) = input([ 'y(' ,num2str(i), ') = ' ]);
z_n(i) = input([ 'z(' ,num2str(i), ') = ' ]);
end
axb = dot(v1,v2);
bxc = dot(v2,v3)
cxa = dot(v3,v1)
%axb, numeric
axb = subs(axb, [v1 v2]);
disp( 'Expresia are valoarea numerica:' );
axb = subs(axb, [i,j,k]))
%%bxc, numeric
bxc = subs(bxc, [v2 v3], [v_n(2) v_n(3)]);
disp( 'Expresia are valoarea numerica:' );
bxc = subs(bxc, [i,j,k])
%%cxa, numeric
cxa = subs(cxa, [v3 v1], [v_n(3) v_n(1)]);
disp( 'Expresia are valoarea numerica:' );
cxa = subs(cxa, [i,j,k])