How to compute the characteristic equation given the eigenvalues?

14 次查看(过去 30 天)
Is there a matlab command to get the characteristic equation (CE) given the eigenvalues? Similarly how to get CE from the A matrix?

采纳的回答

John D'Errico
John D'Errico 2025-2-19
编辑:John D'Errico 2025-2-19
You have not asked this question as if it is a homework assignment, so I'll give an answer.
The characteristic equation GIVEN eigenvalues? Trivial.
The eigenvalues are the roots of a polynomial, known as the characteristic polynomial. What polynomial has roots at a list of points? For example, suppose the eigenvalues are:
EVList = randn(1,5)
EVList = 1×5
-0.4199 -1.3665 1.3929 -1.3947 -0.3760
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
What polynomial has those roots?
syms lambda
CP = prod(lambda - EVList)
CP = 
Feel free to expand it. I'll show only 5 digits, to make it readable.
vpa(expand(CP),5)
ans = 
You could recover the roots to convince yourself that it worked, but I'll leave that to you.
Can you learn the eigenvalues from a matrix? (HInt: what does eig do?)
What is the characteristic polynomial, given a matrix A?
A = randn(3,3)
A = 3×3
-1.0183 0.6000 -0.1730 1.2929 0.3481 0.4041 -0.1120 -1.2856 1.1605
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
CP2 = det(A - lambda*eye(size(A)))
CP2 = 
Can we find the roots of that polynomial? You can use solve, or you could extract the coefficients, and then use roots.
solve(CP2)
ans = 
Are they the same as the eigenvalues, as given by eig?
eig(A)
ans =
-1.3743 + 0.0000i 0.9323 + 0.5344i 0.9323 - 0.5344i

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Linear Algebra 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by