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(
   double          tol           // допуск
   matrix&         P,            // матрица перестановок P
   matrix&                     // нижнетреугольная или верхнетреугольная матрица
   );

Вычисления для типа matrix<float>

bool  matrix::FactorizationCholeskySyPS(
   float           tol           // допуск
   matrixf&        P,            // матрица перестановок P
   matrixf&                    // нижнетреугольная или верхнетреугольная матрица
   );

Вычисления для типа matrix<complex>

bool  matrix::FactorizationCholeskySyPS(
   double          tol           // допуск
   matrixc&        P,            // матрица перестановок P
   matrixc&                    // нижнетреугольная или верхнетреугольная матрица
   );

Вычисления для типа matrix<complexf>

bool  matrix::FactorizationCholeskySyPS(
   float           tol           // допуск
   matrixcf&       P,            // матрица перестановок P
   matrixcf&                   // нижнетреугольная или верхнетреугольная матрица
   );

Параметры

tol

[in]  Допуск, устанавливаемый пользователем. Если tol < 0, тогда используется значение n*ε*max(A[k,k]), где ε — машинная точность. Алгоритм завершается на шаге k-1, если ведущий элемент (pivot) <= tol.

P

[out]  Матрица перестановок P.

L

[out] Нижнетреугольная или верхнетреугольная матрица.

 

Возвращаемое значение

Возвращает true в случае успеха и false в случае ошибки.

Примечание

На вход можно подать симметричную (эрмитову), верхнетреугольную или нижнетреугольную матрицу. Треугольные матрицы подразумеваются симметричными (эрмитово-сопряженными).