现在知道可以用eig函数求特征值和特征向量,怎么去判断是否相似于对角阵呢?另外不用eig函数怎么求出特征值和特征向量?谢谢解答
望采纳
MATLAB的函数issymmetric可以判断一个矩阵是否是对称矩阵。如果矩阵是对称矩阵,那么它就是相似于对角阵。
if issymmetric(A)
% A is a symmetric matrix
else
% A is not a symmetric matrix
end
如果你想要在不使用 eig 函数的情况下求出特征值和特征向量,可以使用特征分解法 (QR 分解法) 或幂迭代法。
MATLAB中的特征分解法和幂迭代法可以使用函数 qr 和函数 eigs 来实现。下面是一个特征分解法示例代码:
% QR 分解
[Q, R] = qr(A);
% 对角化矩阵
D = Q' * A * Q;
% 特征值就是对角化矩阵的对角线元素
eigenvalues = diag(D);
% 特征向量就是原矩阵与对角化矩阵之间的变换矩阵的列向量
eigenvectors = Q;
jordan函数能满足你第一问的要求嘛?第二问:不用eig函数那就只能矩阵计算咯,就是手算变成计算机算而已。