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

Определитель симметричной матрицы

Если симметричная матрица A представлена своим LDLT-разложением A = LDL T (или A = UDU T), то её определитель равен определителю блочно-диагональной матрицы D.

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

Описание подпрограммы

В этом модуле представлено две подпрограммы. Первая подпрограмма, SMatrixLDLTDet, вычисляет определитель матрицы, чье LDLT-разложение уже известно. Вторая подпрограмма, SMatrixDet, работает с симметричными матрицами, чье LDLT-разложение ещё не построено, самостоятельно вызывая подпрограмму SMatrixLDLT.

Manual entries

C++ sdet.h   
C# sdet.cs   
MPFR sdet.h   
Delphi sdet.pas   
FreePascal sdet.pas   
VBA sdet.bas   

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

 

Visual Basic

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

Downloads page

 

 

ALGLIB project, 1999-2010