- EigenSolver
- EigenSolverX
- EigenSolverSchur
- EigenSolver2
- EigenSolver2X
- EigenSolver2Schur
- EigenSolver2Blocked
- EigenSolver2SchurBlocked
- EigenHessenbergSchurQ
- EigenVectorsTriangularZ
- EigenVectorsTriangularZBlocked
EigenSolverSchur
Вычисление собственных значений, верхнетреугольной матрицы в форме Шура и матрицы векторов Шура (LAPACK-функция GEES). См. также Разложение Шура.
Вычисления для типа matrix<double>
bool matrix::EigenSolverSchur(
|
Вычисления для типа matrix<float>
bool matrixf::EigenSolverSchur(
|
Вычисления для типа matrix<complex>
bool matrixc::EigenSolverSchur(
|
Вычисления для типа matrix<complexf>
bool matrixcf::EigenSolverSchur(
|
Параметры
jobvs
[in] Значение из перечисления ENUM_EIG_SCHUR, определяющее способ вычисления векторов Шура.
eigen_values
[out] Вектор собственных значений.
schur_matrix
[out] Верхнетреугольная матрица Шура (форма Шура для входной матрицы).
schur_vectors
[out] Матрица векторов Шура. Не вычисляется, если параметр jobvs установлен в значение N.
Возвращаемое значение
Возвращает true в случае успеха и false в случае ошибки.
Примечание
Расчёт зависит от значений параметра jobvs.
Реальные (не комплексные) матрицы могут иметь комплексное решение. Поэтому входной вектор собственных значений должен быть комплексным. В случае комплексного решения код ошибки устанавливается в 4019 (ERR_MATH_OVERFLOW). В противном случае нужно учитывать только реальные части комплексных значений вектора собственных значений.
Перечисление, определяющее необходимость вычисления собственных векторов.
Идентификатор |
Описание |
---|---|
EIGSCHUR_N |
Векторы Шура не вычисляются |
EIGSCHUR_V |
Векторы Шура вычисляются |