让
n0 =
nx*cos(a) + nz*cos(b)*sin(a) + ny*sin(a)*sin(b)
ny*cos(b) - nz*sin(b)
nz*cos(a)*cos(b) - nx*sin(a) + ny*cos(a)*sin(b)
在 a 和 b 中,ns 固定(但当然,未分配)值。如果我做
[a,b]=solve(n0-[1 0 0]',a,b,'IgnoreAnalyticConstraints',true)
我明白了
Error using solve>assignOutputs (line 257)
3 variables does not match 2 outputs.
Error in solve (line 193)
varargout = assignOutputs(nargout,sol,sym(vars));
那么我想知道''3个变量''?然后我尝试
>> [a,b,c]=solve(n0-[1 0 0]',a,b,'IgnoreAnalyticConstraints',true)
这就是回应
a =
cos(a)/(cos(a)^2 + sin(a)^2)
b =
(sin(a)*sin(b))/((cos(a)^2 + sin(a)^2)*(cos(b)^2 + sin(b)^2))
c =
(cos(b)*sin(a))/((cos(a)^2 + sin(a)^2)*(cos(b)^2 + sin(b)^2))
它在做什么?c里面有什么?我想他正在解决关于 nx ny nz 的问题,但是为什么?每次我尝试用 n 个变量中的 n+k 方程解决问题时,我都会遇到奇怪的错误,即使系统的等级只是 n。
这意味着即使 a=2 b=3 a+b=5 也会给我带来问题。我该如何解决?