Eigen Values

Раздел, содержащий функции для вычисления собственных значений и собственных векторов, предоставляет методы решения стандартных задач линейной алгебры с использованием алгоритмов библиотеки LAPACK. Эти функции полезны для анализа матриц, диагонализации, стабилизации систем и других задач.

  • EigenSolver: Функция предназначена для вычисления собственных значений и собственных векторов произвольной квадратной матрицы с использованием классического алгоритма, представленного lapack-функцией GEEV. Этот метод применяется для широкого класса матриц и позволяет получать разложение матриц на их собственные значения и векторы.
  • EigenSymmetricDC: Функция для вычисления собственных значений и собственных векторов симметричных или эрмитовых матриц, применяя алгоритм "разделяй и властвуй" (divide and conquer). Используются lapack-функции SYEVD и HEEVD, что позволяет эффективно работать с симметричными или эрмитовыми матрицами, обеспечивая более быструю и точную обработку таких матриц.

Функция

Действие

EigenSolver

Вычисление собственных значений и собственных векторов обычной квадратной матрицы классическим алгоритмом (lapack-функция GEEV).

EigenSolverX

Вычисление собственных значений и собственных векторов обычной квадратной матрицы в режиме эксперта (Expert mode), то есть с возможностью влиять на алгоритм расчёта и возможностью получить сопутствующие расчётные данные (lapack-функция GEEVX).

EigenSolverShur

Вычисление собственных значений, верхнетреугольной матрицы в форме Шура и матрицы векторов Шура (lapack-функция GEES). Смотри Разложение Шура.

EigenSolver2

Вычисление обобщённых собственных значений и собственных векторов для пары обычных квадратных матриц (lapack-функция GGEV).

EigenSolver2X

Вычисление обобщённых собственных значений и собственных векторов для пары обычных квадратных матриц в режиме эксперта (Expert mode), то есть с возможностью влиять на алгоритм расчёта и возможностью получить сопутствующие расчётные данные (lapack-функция GGEVX). Обе матрицы должны быть одинакового размера.

EigenSolver2Shur

Вычисление для пары обычных квадратных матриц обобщённых собственных значений, обобщённых собственных векторов, обобщённых форм Шура и левых и правых векторов Шура (lapack-функция GGES).

EigenSolver2Blocked

Вычисление обобщённых собственных значений и собственных векторов для пары обычных квадратных матриц при помощи блочного алгоритма (lapack-функция GGEV3). Обе матрицы должны быть одинакового размера. Параметры метода точно такие же, как и у EigenSolver2.

EigenSolver2ShurBlocked

Вычисление для пары обычных квадратных матриц обобщённых собственных значений, обобщённых собственных векторов, обобщённых форм Шура и левых и правых векторов Шура при помощи блочного алгоритма (lapack-функция GGES3).

EigenSymmetricDC

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи алгоритма "divide and conquere" (lapack-функции SYEVD, HEEVD).

EigenSymmetricQR

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи классического алгоритма QR (lapack-функции SYEV, HEEV).

EigenSymmetricRobust

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи алгоритма Multiple Relatively Robust Representations, MRRR (lapack-функции SYEVR, HEEVR).

EigenSymmetricBisect

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи алгоритма bisection (lapack-функции SYEVX, HEEVX).

EigenSymmetricDC

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи алгоритма "divide and conquere" (lapack-функции SYEVD, HEEVD).

EigenSymmetricQR

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи классического алгоритма QR (lapack-функции SYEV, HEEV).

EigenSymmetricRobust

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи алгоритма Multiple Relatively Robust Representations, MRRR (lapack-функции SYEVR, HEEVR).

EigenSymmetricBisect

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи алгоритма bisection (lapack-функции SYEVX, HEEVX).

EigenSymmetricDC2s

Вычисление всех собственных значений и, при необходимости, собственных векторов вещественной симметричной или эрмитовой (комплексно-сопряжённой) матрицы с использованием двухэтапного алгоритма приведения к тридиагональному виду. Если требуется вычисление собственные векторы, применяется алгоритм divide and conquer («разделяй и властвуй») (функции lapack SYEVD_2STAGE, HEEVD_2STAGE).

EigenSymmetricQR2s

Вычисление всех собственных значений и, при необходимости, собственных векторов вещественной симметричной или эрмитовой (комплексно-сопряжённой) матрицы с использованием двухэтапного алгоритма приведения к тридиагональному виду (функции lapack SYEV_2STAGE, HEEV_2STAGE).

EigenSymmetricRobust2s

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи двухэтапного алгоритма: сначала приведение к тридиагональному виду, затем применение алгоритма множественных относительно надежных представлений (Multiple Relatively Robust Representations, MRRR) (функции lapack SYEVR_2STAGE, HEEVR_2STAGE).

EigenSymmetricBisect2s

Вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряжённой) матрицы при помощи двухэтапного алгоритма: сначала приведение к тридиагональному виду, затем применение метода бисекции (функции lapack SYEVX_2STAGE, HEEVX_2STAGE).

EigenSymmetric2DC

Вычисление всех собственных значений и, при необходимости, собственных векторов обобщенной симметрично определенной собственной задачи вида A*x=(lambda)*B*x,  A*Bx=(lambda)*x или B*A*x=(lambda)*x.

EigenSymmetric2QR

Вычисление всех собственных значений и, при необходимости, собственных векторов обобщенной симметрично определенной собственной задачи вида A*x=(lambda)*B*x, A*Bx=(lambda)*x или B*A*x=(lambda)*x.

EigenSymmetric2Bisect

Вычисление всех собственных значений и, при необходимости, собственных векторов обобщенной симметрично определенной собственной задачи вида A*x=(lambda)*B*x, A*Bx=(lambda)*x или B*A*x=(lambda)*x.

EigenTridiagonalDC

Вычисление собственных значений и собственных векторов симметричной трехдиагональной матрицы с использованием алгоритма "divide and conquer" (lapack-функция STEVD).

EigenTridiagonalQR

Вычисление собственных значений и собственных векторов симметричной трехдиагональной матрицы с использованием QR-алгоритма (lapack-функция STEV).

EigenTridiagonalRobust

Вычисление собственных значений и собственных векторов симметричной трехдиагональной матрицы при помощи алгоритма Multiple Relatively Robust Representations, MRRR (lapack-функция STEVR).

EigenTridiagonalBisect

Вычисление собственных значений и собственных векторов симметричной трехдиагональной матрицы с использованием алгоритма бисекции (lapack-функция STEVX).

EigenTridiagonalQL

Вычисление всех собственных значений симметричной трехдиагональной матрицы с использованием варианта QR-алгоритма без квадратного корня (lapack-функция STERF).

EigenTridiagonalDCQ

Вычисление собственных значений и собственных векторов симметричной трехдиагональной матрицы с использованием алгоритма "разделяй и властвуй" (lapack-функция STEDC).

EigenTridiagonalQRQ

Вычисление собственных значений и собственных векторов симметричной трехдиагональной матрицы с использованием QR-алгоритма (lapack-функция STEQR).

EigenTridiagonalPosDefQ

Вычисление собственных значений и собственных векторов симметричной положительно определенной трехдиагональной матрицы с использованием QR-алгоритма (lapack-функция PTEQR).