Главная       Скачать       Коммерческая поддержка       FAQ       Forum       О нас       Английская версия

Обращение симметричной матрицы

Одним из применений LDLT-разложения является обращение симметричных матриц. По своей функциональности алгоритм во многом похож на аналогичные алгоритмы для матриц, заданных разложением Холецкого или LU-разложением.

Подпрограмма SMatrixLDLTInverse принимает на входе LDLT-разложение матрицы A (результат работы подпрограммы SMatrixLDLT) и возвращает на выходе матрицу A -1, заданную верхним или нижним треугольником в зависимости от того, какой из вариантов LDLT-разложения был выбран (A = L·D·L T или A = U·D·U T). Эту подпрограмму имеет смысл вызывать, если у нас уже есть LDLT-разложение матрицы A, иначе будет удобнее воспользоваться второй подпрограммой.

Подпрограмма SMatrixInverse принимает на входе верхний или нижний треугольник матрицы A, самостоятельно вызывает подпрограммы LDLT-разложения и обращения, и возвращает верхний или нижний треугольник матрицы A -1.

Обе подпрограммы возвращают False, если матрица является вырожденной (в этом случае один из единичных блоков матрицы D строго равен нолю), при этом обращение матрицы не осуществляется. Если матрица не является вырожденной и обращение может быть осуществлено, подпрограммы возвращают True. При этом матрица может быть плохо обусловлена, но подпрограммы не проводят оценку числа обусловленности матрицы.

Этот алгоритм перенесен из библиотеки LAPACK.

Manual entries

C++ sinverse subpackage   
C# sinverse subpackage   

This article is intended for personal use only.

Скачать ALGLIB

C#

Исходный код на C#

Downloads page

 

C++

Исходный код на C++

Downloads page

 

C++, арифметика высокой точности

Исходный код на C++, использующий библиотеки MPFR/GMP.

Исходный код GMP доступен на сайте gmplib.org. Исходный код MPFR доступен на сайте www.mpfr.org.

Downloads page

 

FreePascal

Исходный код на Free Pascal.

Downloads page

 

Delphi

Исходный код на Delphi.

Downloads page

 

VB.NET

Исходный код на VB.NET.

Downloads page

 

VBA

Исходный код на VBA.

Downloads page

 

Python

Исходный код на Python (CPython и IronPython).

Downloads page

 

 

ALGLIB® - numerical analysis library, 1999-2012.
ALGLIB is registered trademark of the ALGLIB Project.