PLUGeTridCondNumReciprocal

Оценивает величину, обратную числу обусловленности общей трехдиагональной матрицы A в норме 1 или в бесконечной норме, используя LU-разложение, полученное методом FactorizationPLUGeTridRaw. LAPACK-функция GTCON.

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

bool  matrix::PLUGeTridCondNumReciprocal(
   long[]&         ipiv,          // массив индексов перестановок
   ENUM_BLAS_NORM  norm,          // норма матрицы
   double          anorm,         // значение нормы матрицы
   double&         rcond          // обратное число обусловленности
   );

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

bool  matrixf::PLUGeTridCondNumReciprocal(
   long[]&         ipiv,          // массив индексов перестановок
   ENUM_BLAS_NORM  norm,          // норма матрицы
   float           anorm,         // значение нормы матрицы
   float&          rcond          // обратное число обусловленности
   );

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

bool  matrixc::PLUGeTridCondNumReciprocal(
   long[]&         ipiv,          // массив индексов перестановок
   ENUM_BLAS_NORM  norm,          // норма матрицы
   double          anorm,         // значение нормы матрицы
   double&         rcond          // обратное число обусловленности
   );

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

bool  matrixcf::PLUGeTridCondNumReciprocal(
   long[]&         ipiv,          // массив индексов перестановок
   ENUM_BLAS_NORM  norm,          // норма матрицы
   float           anorm,         // значение нормы матрицы
   float&          rcond          // обратное число обусловленности
   );

Параметры

ipiv

[in]  Массив индексов перестановок, полученный в результате выполнения функции GTTRF.

норма

[in]  Значение из перечисления ENUM_BLAS_NORM, определяющее норму, используемую для оценки обратного числа обусловленности.

anorm

[in]  Значение нормы матрицы. Если norm = 'O', то это 1-норма матрицы A. Если norm = 'I', то это бесконечная норма матрицы A. Значение нормы может быть получено с помощью функции MatrixNormGeTrid, примененной к исходной матрице A.

rcond

[out] Оценка обратного числа обусловленности. Если оценка приводит к переполнению вниз (underflow), устанавливается rcond = 0, что означает, что матрица сингулярна (в пределах рабочей точности). Если значение rcond мало по сравнению с 1.0, это свидетельствует о том, что матрица может быть плохо обусловленной или даже сингулярной.

 

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

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

Примечание

Метод применяется к матрице AF, полученной в результате разложения методом FactorizationPLUGeTridRaw.

Вычисленное значение rcond не может быть меньше, чем r (истинное обратное число обусловленности) и на практике почти всегда меньше 10r. Вызов метода содержит решение нескольких систем линейных уравнений вида A*x = b — обычно 4 или 5, но не более 11.

ENUM_BLAS_NORM

Перечисление, определяющее норму матрицы.

Идентификатор

Описание

BLASNORM_O

'O' — 1-норма

BLASNORM_I

'I' — бесконечная норма