9.4. Собственные векторы и собственные значения матриц

Вторая по частоте применения задача вычислительной линейной алгебры — это задача поиска собственных векторов х и собственных значений X матрицы А, т. е. решения матричного уравнения Ах=Хх. Такое уравнение имеет решения в виде собственных значений L1L2,... и соответствующих им собственных векторов x1, х2,... Для решения таких задач на собственные векторы и собственные значения в Mathcad встроено несколько функций, реализующих довольно сложные вычислительные алгоритмы:

  • eigenvais(A) — вычисляет вектор, элементами которого являются собственные значения матрицы А;
  • eigenvecs(A) — вычисляет матрицу, содержащую нормированные собственные векторы, соответствующие собственным значениям матрицы А;
    • n-й столбец вычисляемой матрицы соответствует собственному вектору n-го собственного значения, вычисляемого eigenvais;
  • eigenvec(A,A.) — вычисляет собственный вектор для матрицы А и заданного собственного значения L;
    • А — квадратная матрица.

Применение этих функций иллюстрирует листинг 9.36. Проверка правильности нахождения собственных векторов и собственных значений приведена в листинге 9.37. Причем проверка правильности выражения Ах=Lх проведена дважды — сначала на числовых значениях х и L, а потом путем перемножения соответствующих матричных компонентов.

Листинг 9.36. Поиск собственных векторов и собственных значений

Листинг 9.37. Проверка правильности нахождения собственных векторов собственных значений (продолжение листинга 9,36)

Помимо рассмотренной проблемы поиска собственных векторов и значений, иногда рассматривают более общую задачу, называемую задачей на обобщенные собственные значения: Aх=LBx. В ее формулировке помимо матрицы А присутствует еще одна квадратная матрица в. Для задачи на обобщенные собственные значения имеются еще две встроенные функции, действие которых аналогично рассмотренным (листинги 9.38 и 9.39):

  • genvais(A,B) — вычисляет вектор v собственных значений, каждый из которых удовлетворяет задаче на обобщенные собственные значения;
  • genvecs(A/B) — вычисляет матрицу, содержащую нормированные собственные векторы, соответствующие собственным значениям в векторе v, который вычисляется с помощью genvais. В этой матрице i-й столбец является собственным вектором х, удовлетворяющим задаче на обобщенные собственные значения;
    • А, в — квадратные матрицы.

Листинг 9.38. Поиск обобщенных собственных векторов и собственных значений

Листинг 9.39. Проверка правильности нахождения собственных векторов и собственных значений (продолжение листинга 9.38)