- FactorizationPLU
- FactorizationPLUGeTrid
- FactorizationLDL
- FactorizationLDLSyTridPD
- FactorizationCholesky
- FactorizationCholeskySyPS
FactorizationCholeskySyPS
Вычисляет разложение Холецкого с полным выбором ведущего элемента (complete pivoting) для вещественной симметричной (или комплексной эрмитовой) положительно полуопределенной матрицы A размером n на n. Разложение имеет вид:
P**T * A * P = L * L**T, если используется нижнетреугольная (или симметричная) матрица A,
или
P**T * A * P = U**T * U, если используется верхнетреугольная матрица A,
где P — матрица перестановок, L — нижнетреугольная матрица, а U — верхнетреугольная. Функция LAPACK PSTRF.
Вычисления для типа matrix<double>
bool matrix::FactorizationCholeskySyPS(
|
Вычисления для типа matrix<float>
bool matrix::FactorizationCholeskySyPS(
|
Вычисления для типа matrix<complex>
bool matrix::FactorizationCholeskySyPS(
|
Вычисления для типа matrix<complexf>
bool matrix::FactorizationCholeskySyPS(
|
Параметры
tol
[in] Допуск, устанавливаемый пользователем. Если tol < 0, тогда используется значение n*ε*max(A[k,k]), где ε — машинная точность. Алгоритм завершается на шаге k-1, если ведущий элемент (pivot) <= tol.
P
[out] Матрица перестановок P.
L
[out] Нижнетреугольная или верхнетреугольная матрица.
Возвращаемое значение
Возвращает true в случае успеха и false в случае ошибки.
Примечание
На вход можно подать симметричную (эрмитову), верхнетреугольную или нижнетреугольную матрицу. Треугольные матрицы подразумеваются симметричными (эрмитово-сопряженными).