在matlab中,我试图乘以符号矩阵(大小为3X3)。输出显示具有一些元素的矩阵,这些元素本身就是矩阵。 为什么有些元素是矩阵?
示例代码:
syms a1 a2 a3
F2 = [a1+0.0003 .0002 .0004; a2+.0003 .0005 .0003; a3+.0003 .0002 .0004];
C2 = F2'*F2;
K = C2^(16/57);
T = inv(K)*C2*inv(K);
S = T - 0.5*T^2 + 0.33*T^3;
答案 0 :(得分:0)
问题似乎是K = C2^(16/57)
。以矩阵为根本并非易事,解决方案并不总是存在。这就是MATLAB无法解析此表达式的原因。试试例如:
A = syms('A',[3,3]); % create 3x3 symbolic matrix
B = A^(1/3); % calculate the 3rd root of A
结果将是
ans = matrix([[a1_1, a1_2, a1_3], [a2_1, a2_2, a2_3], [a3_1, a3_2, a3_3]])^(1/3)
在你的情况下也是如此。如果仔细观察,您会发现matrix
中的S(1,1)
表达式的格式为matrix(...)^(32/57)