Returning all Eigen Vectors including non-unique ones

2 次查看(过去 30 天)
Hi
is there a Matlab function or switch that will force eig to return all the Eigen Vectors including the non-unique ones?
I have a 6x6 matrix and need to know the order of ALL the Eigen vectors returned by Matlab.
Regards
Tim

回答(1 个)

pfb
pfb 2015-5-2
Not sure what you mean... eig does return all of the eigenvectors and eigenvalues.
Do you mean that you need to know the degeneracy of the eigenvectors?
I think in general you have to do that numerically (and anyway approximately) by checking whether two eigenvalues are very close. If I recall correctly, the eigenvalues are output in ascending order (otherwise you can sort them).
Then, if E cointains your eigenvalues, you can check diff(E). If very small numbers appear, the corresponding eigenvectors are likely to be degenerate.
  5 个评论
pfb
pfb 2015-5-2
编辑:pfb 2015-5-2
Ok, I see. You're doing a symbolic calculation.
You should specify this in the tags/product field of your question, or at least in your question. Also, the editor has a button for code formatting. That also makes your question more readable.
Anyway, your M6 has only 3 linearly independent eigenvectors. The others depend on the first, and they're not unique.
I am not an expert in symbolic matlab, but I fail to see how could matlab choose a non-unique vector.
Have you taken a look at the documentation of the function "help sym/eig"?
Tim Fulcher
Tim Fulcher 2015-5-2
OK, thanks pb, so no way to view the non-uniques. I'll take your comments re:formatting and tags onboard.
Regards
Tim

请先登录,再进行评论。

类别

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