| Текст подпрограммы и версий ( Фортран ) adg1r.zip adg1d.zip adg1c.zip | Тексты тестовых примеров  ( Фортран ) tadg1r.zip tadg1d.zip tadg1c.zip | 
| Текст подпрограммы и версий ( Си ) adg1r_c.zip adg1d_c.zip adg1c_c.zip | Тексты тестовых примеров  ( Си ) tadg1r_c.zip tadg1d_c.zip tadg1c_c.zip | 
| Текст подпрограммы и версий ( Паскаль ) adg1r_p.zip adg1e_p.zip adg1c_p.zip | Тексты тестовых примеров  ( Паскаль ) tadg1r_p.zip tadg1e_p.zip tadg1c_p.zip | 
Вычисление определителя матрицы методом Гаусса с выбором ведущего элемента по столбцу.
Для матрицы А выполняется разложение вида Q*А = L*U, где Q - матрица перестановок, L, U - треугольные матрицы и матрица L имеет единичные диагональные элементы. Определитель матрицы А вычисляется как произведение определителя матрицы Q и диагональных элементов матрицы U и записывается в виде:
det A = D1*2D2, где 0.0625 ≤ D1 < 1.
В.В.Воеводин, Р.В.Петрина, Комплекс алгоритмов, основанных на преобразованиях Гаусса, в пакете линейной алгебры, Сб. "Численный анализ на ФОPТPАНе", вып.3, Изд-во МГУ, 1973.
SUBROUTINE ADG1R (A, D1, D2, IS, N)
Параметры
| A - | вещественный двумерный массив размера N на N, в котором задается исходная матрица; | 
| D1 - | вещественная переменная, в которой запоминается мантисса определителя; | 
| D2 - | целая переменная, в которой запоминается двоичный порядок определителя; | 
| IS - | целый вектор длины N, используемый как рабочий; | 
| N - | заданный порядок исходной матрицы (тип: целый). | 
Версии
| ADG1D - | вычисление определителя матрицы, заданной с удвоенной точностью, методом Гаусса с выбором ведущего элемента по столбцу. | 
| ADG1C - | вычисление определителя комплексной матрицы C с выбором ведущего элемента по столбцу. | 
Вызываемые подпрограммы
| AFG1R - | треугольное разложение матрицы методом Гаусса с выбором ведущего элемента по столбцу. | 
| AFG1D - | треугольное разложение матрицы, заданной с удвоенной точностью, методом Гаусса с выбором ведущего элемента по столбцу. | 
| AFG1C - | треугольное разложение комплексной матрицы методом Гаусса с выбором ведущего элемента по столбцу. | 
Замечания по использованию
| 1. | В подпрограмме АDG1D массив А и переменная D1 имеют тип DОUВLЕ РRЕСISIОN. | |
| 2. | В подпрограмме АDG1С массив А и переменная D1 имеют тип СОМРLЕХ. | 
       DIMENSION  A(4, 4), IS(4)
       DATA  A /5., 7., 6., 5., 7., 10., 8., 7., 6., 8., 10., 9., 5., 7., 9., 10./
       N = 4
       CALL  ADG1R (A, D1, D2, IS, N)
Результат:
         D1 = 0.0625,  D2 = 4,
 т.е.  det A = 0.0625*24 = 1.