eigenvalue diagonalization in matlab

조회 수: 14 (최근 30일)
Omer Hakan
Omer Hakan 2022년 10월 24일
편집: Walter Roberson 2022년 10월 25일
I need to calculate eigenvalue diagonalization of B = P-1VP by showing P-1, V and P. I couldn't find anything online and in eig function. Can someone help me solve this issue?

채택된 답변

Walter Roberson
Walter Roberson 2022년 10월 25일
편집: Walter Roberson 2022년 10월 25일
The typical semantics for eig is
[V, D] = eig(A)
which calculates A*V = V*D
If you pre-multiply by inv(V) then inv(V)*A*V = inv(V)*V*D which is inv(V)*A*V = D which has form that the user is looking for, if we rename some variables,
[P, B] = eig(V)
would then become inv(P)*V*P = B -- where V would be the input and B would be the diagonal output, and the whole thing would be confusing to people accustomed to V being an output and B (or other full matrix) being the input.
What if we post-multiply?
A*V*inv(V) = V*D*inv(V)
then A = V*D*inv(V) . But this is the wrong form, having an original matrix on the left and its inverse on the right. We would need to do something like
[invP, V] = eig(B);
P = inv(P);
and that would satisfy -- at the expense, again, of confusion from people who are accustomed to V being the role of the full matrix, not of the diagonal.
Possible? Yes, with some confusion. Not recommended, however.

추가 답변 (1개)

Paul
Paul 2022년 10월 24일
Does eig not provide the solution, assuming a solution exists?

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by