У меня есть диагональная матрица с собственными значениями, например. 1, 2 и 3. Я нарушаю его значения с некоторым шумом, но он достаточно мал, чтобы изменить последовательность. Когда я получаю собственные значения этой матрицы, они составляют 1,2,3 в 50% случаев и 1,3,2 в других 50%. Когда я делаю то же самое без шума, порядок всегда равен 1,2,3.Как получить исходный порядок собственных значений с использованием Eigen?
я получить собственные значения с помощью:
matrix.eigenvalues().real();
или с использованием:
Eigen::EigenSolver<Eigen::Matrix3d> es(matrix, false);
es.eigenvalues().real();
В результате то же самое. Есть идеи, как это исправить?