特征值和特征向量可以通过以下等式从张量T导出。
我试图得到特征值,特征向量和张量T的方程组来推导T.
T
矩阵方程是:
(T(i,k)-L(r)*I) * A(r,k) = 0
第一个条目应为:
[(T11-L1)*A11 T12*A12 T13*A13 T14*A14 ]
[T21*A11 (T22-L1)*A12 T23*A13 T24*A14 ]
[T31*A11 T32*A12 (T33-L1)*A13 T34*A14 ]
[T41*A11 T42*A12 T43*A13 (T44-L1)*A14]
答案 0 :(得分:2)
首先,让我们使用sym
更容易声明 symbolics :
T = sym('T%d%d', [4 4]);
A = sym('A%d%d', [4 4]);
L = sym('L', [4 1]);
原始代码存在一些问题; 1。 f
正在每次内部迭代中被替换。 2。内部结果应该是标量,因此I
不得出现在那里。 (请注意,您也可以将I
定义为eye(4)
,而不是手动编写。)
以下是更正后的版本:
f = cell(4,1); % Initialize equation system
for r = 1:k
for k = 1:4
for i = 1:4
f{r}(i,k) = T(i,k) * A(r,k);
end
end
f{r} = f{r} - L(r)*diag(A(r,:));
end
f{i}
将是ith
切片。
注意:正如@Schorsch指出的那样(并且Matlab也显示了警告),总是尝试使用i
以外的其他变量名称(或{{ 1}}),因为它们代表imaginary unit。
只是为了好玩,您可以使用repmat
删除两个内部循环:
j