Это на самом деле тривиально.Ваше требование состоит в том, что A * X = лямбда * X, где X - массив.По сути, посмотрите, что происходит для одного столбца X. Если существует массив X, то верно, что
A * X (:, i) = лямбда * X (:, i)
И это должно быть верно для ТОГО ЖЕ значения лямбды для всех столбцов X. По сути, это означает, что X (:, i) является собственным вектором A с соответствующим собственным лямбда-значением.Что еще более важно, это означает, что КАЖДЫЙ столбец X имеет то же собственное значение, что и любой другой столбец.
Таким образом, тривиальное решение этой проблемы состоит в том, чтобы просто иметь матрицу X с одинаковыми столбцами, если этот столбец являетсяСобственный вектор A. Если собственное значение имеет кратность больше единицы (следовательно, существует множество собственных векторов с одинаковым собственным значением), то столбцы X могут быть любой линейной комбинацией этих собственных векторов.
Попробуйте это на практике.Я выберу некоторую простую матрицу A.
>> A = [2 3;3 2];
>> [V,D] = eig(A)
V =
-0.70711 0.70711
0.70711 0.70711
D =
-1 0
0 5
Второй столбец V - собственный вектор с собственным значением 5. Мы можем произвольно масштабировать собственный вектор по любой константе.Теперь выберите вектор vec и создайте матрицу с реплицированными столбцами.
>> vec = [1;1];
>> A*[vec,vec,vec]
ans =
5 5 5
5 5 5
Это никого не должно удивлять.