我正在尝试计算此矩阵的特征向量和特征值
import numpy as np
la = 0.02
mi = 0.08
n = 500
d1 = np.full(n, -(la+mi), np.double)
d1[0] = -la
d1[-1] = -mi
d2 = np.full(n-1, la, np.double)
d3 = np.full(n-1, mi, np.double)
A = np.diagflat(d1) + np.diagflat(d2, -1) + np.diag(d3, 1)
e_values, e_vectors = np.linalg.eig(A)
如果将矩阵的尺寸设置为n <110,则输出很好。但是,如果将其设置为n> = 110,则特征值和特征向量分量都将变为具有重要虚部的复数。为什么会这样?它应该发生吗?这是非常奇怪的行为,老实说,我有点卡住。