How to find a complex eigenvalue of a matrix
17 ビュー (過去 30 日間)
古いコメントを表示
I want to find the highest complex eigenvalue of a matrix A. For example:
lambda = eig(A)
I'll get:
lambda =
2.6955 + 0.0000i
-1.1216 + 3.9723i
-1.1216 - 3.9723i
-1.7535 + 0.0000i
-0.1240 + 2.2553i
-0.1240 - 2.2553i
When I do:
[lambda_max, index_max] = max(real(lambda))
I'll get:
lambda_max =
2.6955
While I would like to have
-0.1240
How can I do this?
(sometimes the imaginairy part of complex eigenvalues can be zero)
10 件のコメント
Steven Lord
2019 年 12 月 18 日
I think the cplxpair function may be of interest to you in making sure the complex conjugate pairs are grouped together.
Walter Roberson
2019 年 12 月 18 日
lambda = [
2.6955 + 0.0000i
-1.1216 + 3.9723i
-1.1216 - 3.9723i
-1.7535 + 0.0000i
-0.1240 + 2.2553i
-0.1240 - 2.2553i];
[uniquegroups, ~, group] = uniquetol([real(lambda), abs(imag(lambda))], 'byrows', true);
groupcounts = accumarray(group, 1);
maxeigreal = max(real(uniquegroups(groupcounts>1,:)));
採用された回答
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Develop Apps Using App Designer についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!