我需要对符号工具箱进行一些计算。
我的值是:
q = sym('q%d', [n 1])
;其中n
不是固定值(由用户定义)
我需要对它进行一些计算,例如:
for i=1:N
z(:,i+1) = T_a(1:3,1:3)*z(:,1);
end
其中(对于n=2
,T_a的值对于不同的n值正在改变)
T_a=[ cos(q1), -(4967757600021511*sin(q1))/81129638414606681695789005144064, -sin(q1), 0;
sin(q1), (4967757600021511*cos(q1))/81129638414606681695789005144064, cos(q1), 0;
0, -1, 4967757600021511/81129638414606681695789005144064, 1/10
0, 0, 0, 1]
和
z =
0 0 0
0 0 0
1 0 0
当我运行代码时,它会出错并说:
The following error occurred converting from sym to double:
DOUBLE cannot convert the input expression into a double array.
If the input expression contains a symbolic variable, use VPA.
关于另一个问题,我试图使用双重命令q=double(q)
,但它也没有用。
我该如何解决这个问题。
提前致谢