С ++ имеет очень эффективный алгоритм для вычисления собственных значений и собственных векторов в библиотеке MKL с функцией dgeev. Но он вычисляет все собственные значения и все левые и правильные собственные векторы.
Собственные значения (2,86, 10,76) (2,86, -10,76) (-0,69, 4,70) (-0,69, -4,70)-10,46
левые собственные векторы (0,04, 0,29) (0,04, -0,29) (-0,13, -0,33) (-0,13, 0,33) 0,04 (0,62, 0,00) (0,62, 0,00) (0,69, 0,00)(0,69, 0,00) 0,56 (-0,04, -0,58) (-0,04, 0,58) (-0,39, -0,07) (-0,39, 0,07) -0,13 (0,28, 0,01) (0,28, -0,01) (-0,02, -0,19) (-0,02, 0,19) -0,80 (-0,04, 0,34) (-0,04, -0,34) (-0,40, 0,22) (-0,40, -0,22) 0,18
правые собственные векторы (0,11, 0,17)(0,11, -0,17) (0,73, 0,00) (0,73, 0,00) 0,46 (0,41, -0,26) (0,41, 0,26) (-0,03, -0,02) (-0,03, 0,02) 0,34 (0,10, -0,51) (0,100,51) (0,19, -0,29) (0,19, 0,29) 0,31 (0,40, -0,09) (0,40, 0,09) (-0,08, -0,08) (-0,08, 0,08) -0,74 (0,54, 0,00) (0,54, 0,00) (-0,29, -0,49) (-0,29, 0,49) 0,16
Для больших матриц это занимает много времени. Особенно, если вам нужно вычислить собственные векторы для большого числа матриц.
Поэтому главный вопрос заключается в том, как я могу вычислить только один собственный вектор для реальной матрицы только для одного собственного значения лямбда = 1 настолько быстро, насколько это возможно? Или как я могу решить систему линейных уравнений AE = 0, где A - вещественная матрица, E - матрица идентичности. Собственный вектор существует на 100% и состоит только из действительных чисел.