Текст подпрограммы и версий ( Фортран )
adg0r.zip   adg0d.zip   adg0c.zip
Тексты тестовых примеров ( Фортран )
tadg0r.zip   tadg0d.zip   tadg0c.zip
Текст подпрограммы и версий ( Си )
adg0r_c.zip   adg0d_c.zip   adg0c_c.zip
Тексты тестовых примеров ( Си )
tadg0r_c.zip   tadg0d_c.zip   tadg0c_c.zip
Текст подпрограммы и версий ( Паскаль )
adg0r_p.zip   adg0e_p.zip   adg0c_p.zip
Тексты тестовых примеров ( Паскаль )
tadg0r_p.zip   tadg0e_p.zip   tadg0c_p.zip

Подпрограмма:  ADG0R

Назначение

Вычисление определителя матрицы методом Гаусса без выбора ведущего элемента.

Математическое описание

Для матрица А вычисляется разложение вида А = L*U, где L, U - треугольные матрицы, матрица L имеет единичные диагональные элементы. Определитель матрицы А вычисляется как произведение диагональных элементов матрицы U и записывается в виде:

     det A = D1*2D2 ,   где   0.0625 ≤ D1 < 1.

В.В.Воеводин, Р.В.Петрина, Комплекс алгоритмов, основанных на преобразованиях Гаусса, в пакете линейной алгебры, Сб. "Численный анализ на ФОPТPАНе", вып.3, Изд-во МГУ, 1973.

Использование

    SUBROUTINE  ADG0R (A, D1, D2, N) 

Параметры

A - вещественный двумерный массив размера N на N, в котором задается исходная матрица;
D1 - вещественная переменная, в которой запоминается мантисса определителя;
D2 - целая переменная, в которой запоминается двоичный порядок определителя;
N - заданный порядок исходной матрицы (тип: целый).

Версии

ADG0D - вычисление определителя матрицы, заданной с удвоенной точностью, методом Гаусса без выбора ведущего элемента.
ADG0C - вычисление определителя комплексной матрицы, методом Гаусса без выбора ведущего элемента.

Вызываемые подпрограммы

AFG0R - треугольное разложение матрицы методом Гаусса без выбора ведущего элемента.
AFG0D - треугольное разложение матрицы, заданной с удвоенной точностью, методом Гаусса без выбора ведущего элемента.
AFG0C - треугольное разложение комплексной матрицы методом Гаусса без выбора ведущего элемента.

Замечания по использованию

  1. 

В подпрограмме АDG0D массив А и переменная D1 имеют тип DОUВLЕ РRЕСISIОN.

  2.  В подпрограмме АDG0С массив А и переменная D1 имеют тип СОМРLЕХ.

Пример использования

          DIMENSION  A(3, 3)
          DATA  A /-73., 92., -80., 78., 66., 37., 24., 25., 10./
          N = 3
          CALL  ADG0R (A, D1, D2, N)

Результат:

          D1 = 0.0625,  D2 = 4,
  т.е.   det A = 0.0625*24 = 1