特征值和特征向量的方程组

时间:2013-06-28 15:28:10

标签: matlab

特征值和特征向量可以通过以下等式从张量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]

1 个答案:

答案 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