- EigenTridiagonalDC
- EigenTridiagonalQR
- EigenTridiagonalRobust
- EigenTridiagonalBisect
- EigenTridiagonalQL
- EigenTridiagonalDCQ
- EigenTridiagonalQRQ
- EigenTridiagonalPosDefQ
EigenTridiagonalPosDefQ
Вычисление собственных значений и собственных векторов симметричной положительно определенной трехдиагональной матрицы с использованием QR-алгоритма (lapack-функция PTEQR). При помощи данного метода могут быть вычислены собственные векторы как входной трехдиагональной матрицы, так и оригинальной положительно определенной симметричной матрицы. Для этого используется ортогональная матрица Q, полученная в результате приведения к трехдиагональной форме.
Вычисления для типа matrix<double>
bool matrix::EigenTridiagonalPosDefQ(
|
Вычисления для типа matrix<float>
bool matrixf::EigenTridiagonalPosDefQ(
|
Вычисления для типа matrix<complex>
bool matrixc::EigenTridiagonalPosDefQ(
|
Вычисления для типа matrix<complexf>
bool matrixcf::EigenTridiagonalPosDefQ(
|
Параметры
compv
[in] Значение из перечисления ENUM_EIGTRIDIAG_Z, определяющее способ вычисления собственных векторов.
Q
[in] Ортогональная матрица Q, полученная методом ReflectTridiagonalToQ.
eigen_values
[out] Вектор собственных значений.
eigen_vectors
[out] Матрица собственных векторов.
Возвращаемое значение
Возвращает true в случае успеха, иначе false в случае ошибки.
Примечание
Расчет зависит от значения параметра compv.
При compv = EIGCOMPZ_N рассчитываются только собственные значения, собственные векторы при этом не вычисляются.
При значении EIGCOMPZ_V вычисляются собственные значения, а также собственные векторы исходной симметричной матрицы.
Если параметр compv установлен в значение EIGCOMPZ_I, в дополнение к собственным значениям вычисляются собственные векторы трехдиагональной матрицы.
На вход должна подаваться симметричная положительно определенная трехдиагональная матрица.
ENUM_EIGTRIDIAG_Z
Перечисление, определяющее необходимость вычисления собственных векторов.
Идентификатор |
Описание |
---|---|
EIGCOMPZ_N |
'N' — вычислять только собственные значения |
EIGCOMPZ_V |
'V' — дополнительно вычислять собственные векторы симметричной матрицы |
EIGCOMPZ_I |
'I' — дополнительно вычислять собственные векторы трехдиагональной матрицы |