eigenvalue diagonalization in matlab

1 view (last 30 days)
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?

Accepted Answer

Walter Roberson
Walter Roberson on 25 Oct 2022
Edited: Walter Roberson on 25 Oct 2022
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.

More Answers (1)

Paul on 24 Oct 2022
Does eig not provide the solution, assuming a solution exists?

Community Treasure Hunt

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

Start Hunting!

Translated by