![]() |
LU-разложение имеет много различных применений, одним из которых является вычисление определителей. Если квадратная комплексная матрица A представлена в виде PA = LU, то определитель матрицы A легко вычислить с учетом того, что det L = 1, det P = +1 или det P = -1 (в зависимости от перестановки), а определитель матрицы U равен произведению её диагональных элементов.
Подпрограмма CMatrixLUDet вычисляет определитель комплексной матрицы, LU-разложение которой уже проведено. На входе подпрограмма получает результаты работы подпрограммы CMatrixLU - матрицы L и U в компактной форме и таблицу перестановок строк, на выходе возвращает определитель матрицы. Эту подпрограмму имеет смысл использовать, если вы уже произвели LU-разложение для каких-то своих целей и хотите использовать полученные ранее результаты для вычисления определителя.
Подпрограмма CMatrixDet используется для вычисления определителя комплексной матрицы, LU-разложение которой ещё не проводилось. На входе вы задаете матрицу A, на выходе получаете определитель. Все операции, связанные с LU-разложением, спрятаны внутри подпрограммы и вызываются самостоятельно.
| C++ | matdet subpackage | |
| C# | matdet subpackage |
This article is intended for personal use only.
Исходный код на C#
Исходный код на C++
Исходный код на C++, использующий библиотеки MPFR/GMP.
Исходный код GMP доступен на сайте gmplib.org. Исходный код MPFR доступен на сайте www.mpfr.org.
Исходный код на Free Pascal.
Исходный код на Delphi.
Исходный код на VB.NET.
Исходный код на VBA.
Исходный код на Python (CPython и IronPython).
|
ALGLIB® - numerical analysis library, 1999-2012. |