我想找到并绘制大的特征值(大约) 矩阵。但是在matlab中使用该eig
函数时发现,它不应该给出复杂的特征值。例如,在下面的代码中,我有一个Tridiagonal Toeplitz 矩阵,它应该具有所有实特征值。
但它似乎eig
是不稳定的,n=90
并在一些特征值中返回一个小的复杂错误。有没有办法更准确地获得特征值?
clear parameters
close all
clc
n=90;
dd=-2.*ones(n,1);
ud=1.8*ones(n,1);
ld=.1*ones(n,1);
A = spdiags([ld dd ud],-1:1,n,n);
C=full(A);
g=eig(C);
g=sort(g);
cond(C)
plot(g,'.')