- SingularValueDecompositionDC
- SingularValueDecompositionQR
- SingularValueDecompositionQRPivot
- SingularValueDecompositionBisect
- SingularValueDecompositionJacobiHigh
- SingularValueDecompositionJacobiLow
- SingularValueDecompositionBidiagDC
- SingularValueDecompositionBidiagBisect
- SingularValueDecompositionBidiagQR
SingularValueDecompositionBidiagBisect
Singular Value Decomposition, алгоритм bisection для бидиагональных матриц (LAPACK-функция BDSVDX).
Вычисления для типа matrix<double>
bool matrix::SingularValueDecompositionBidiagBisect(
|
Вычисления для типа matrix<float>
bool matrix::SingularValueDecompositionBidiagBisect(
|
Параметры
jobz
[in] Значение из перечисления ENUM_SVDBIDIAG_Z, определяющее способ вычисления левых сингулярных векторов.
range
[in] Значение из перечисления ENUM_BLAS_RANGE, определяющее подмножество вычисляемых сингулярных значений и векторов.
lower
[in] Нижняя граница подмножества сингулярных значений, задаётся в зависимости от значения параметра range.
upper
[in] Верхняя граница подмножества сингулярных значений, задаётся в зависимости от значения параметра range.
S
[out] Вектор сингулярныx значений.
U
[out] Матрица левых сингулярных векторов.
V
[out] Транспонированная матрица правых сингулярных векторов.
Возвращаемое значение
Возвращает true в случае успеха, иначе false в случае ошибки.
Примечание
При значении BLASRANGE_A все сингулярные значения вычисляются, при этом параметры lower и upper игнорируются.
При значении BLASRANGE_V вычисляются только те сингулярные значения (и их векторы), которые попадают в диапазон вещественных значений, заданных параметрами lower и upper
При значении BLASRANGE_I вычисляются только те сингулярные значения (и их векторы), которые попадают в диапазон целочисленных индексов, заданных параметрами lower и upper. Например, при параметрах lower=0 и upper=2 вычисляются только первые три сингулярные значения.
Бидиагональная матрица — квадратная матрица с ненулевыми главной диагональю и одной из субдиагоналей.
Верхняя бидиагональная матрица
[[x, x, 0, 0, 0],
|
Нижняя бидиагональная матрица
[[x, 0, 0, 0, 0],
|
ENUM_SVDBIDIAG_Z
Перечисление, определяющее способ вычисления левых сингулярных векторов.
Идентификатор |
Описание |
---|---|
SVDJOBZ_V |
Вычисляются сингулярные значения и сингулярные векторы. |
SVDJOBZ_N |
Вычисляются только сингулярные значения. |
ENUM_BLAS_RANGE
Перечисление, определяющее способ вычисления правых сингулярных векторов.
Идентификатор |
Описание |
---|---|
BLASRANGE_A |
Вычисляются все сингулярные или собственные значения. |
BLASRANGE_V |
Вычисляются все сингулярные или собственные значения в полуоткрытом интервале (VL,VU). |
BLASRANGE_I |
Вычисляются особые или собственные значения с IL-го по IU-е. |
Смотри также