如何用Matlab求解二次矩阵表达式

时间:2017-04-10 13:42:52

标签: matlab matrix

如果我有以下二次方程式

C_1=S*C*U

其中C_1C是已知矩阵,SU的转置矩阵,如何在Matlab中找到矩阵U?有没有一个功能可以帮助我找到它?

1 个答案:

答案 0 :(得分:0)

您已经很少详细说明了矩阵的性质,但如果C_1是正方形且对称的,则以下内容成立:

C_1 = U * D * (U')

素数U'表示U的转置。这里,DC_1的特征值的对角矩阵,U是特征向量的对应矩阵。

采用以下示例:

C_1 = [3     0     5
       0     1     6
       5     6     4];
[V, D] = eig(C_1);
% now V*D*(V') = C_1

因此,如果C_1是方形且对称的,并且C包含其特征值,那么您的问题的答案就是:

UC_1 的特征向量矩阵,您可以使用eig function找到它。

有关详细信息,请参阅matrix cookbook第5.3.1节。