Eigenvalue problem on non-Hermitian matrix
18 次查看(过去 30 天)
显示 更早的评论
I'm trying to solve the eigenvalue problem of this simple matrix H=[1 1i;1+1i 0] using [V,D,W]=eig(H). According to the theory of linear algebra we are supposed to have W'*H*inv(W')=D, inv(V)*H*V=D and inv(V)=W'. But it turns out inv(V)=W' is not true. I wonder if it was the inv function went wrong?
0 个评论
采纳的回答
Christine Tobler
2022-4-4
You can think of it like this: If there is an invertible V such that inv(V)*H*V=D, then you can expect that the matrix myW = inv(V)' satisfies myW'*H*inv(myW')=D, simply by substitution. However, the matrix pair V, W returned by MATLAB doesn't satisfy this relation.
Why doesn't it? As Matt J. said, we can't rely on the matrix V to be invertible, so the matrices V and W are each computed separately, only making sure that they match up with the relevant eigenvalues in D (both V and W are computed based on the Schur decomposition of H). Since eigenvectors aren't uniquely defined (you can change the sign of each column of V or W for example, and the result is still correct), it's unlikely that one of V or W directly matches up with the formula W' = inv(V).
If you're confident that your matrix has a well-conditioned matrix of eigenvectors, you can of course just compute W = inv(V)' directly and go on from there. But I think it would be quite rare to be able to be confident of that for a given type of matrix.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!