| Текст подпрограммы и версий ( Фортран ) aig4r.zip aig4d.zip aig4c.zip | Тексты тестовых примеров  ( Фортран ) taig4r.zip taig4d.zip taig4c.zip | 
| Текст подпрограммы и версий ( Си ) aig4r_c.zip aig4d_c.zip aig4c_c.zip | Тексты тестовых примеров  ( Си ) taig4r_c.zip taig4d_c.zip taig4c_c.zip | 
| Текст подпрограммы и версий ( Паскаль ) aig4r_p.zip aig4e_p.zip aig4c_p.zip | Тексты тестовых примеров  ( Паскаль ) taig4r_p.zip taig4e_p.zip taig4c_p.zip | 
Обращение вещественной матрицы общего вида методом Гаусса с выбором ведущего элемента по столбцу.
Для заданной вещественной квадратной матрицы А порядка N выполняется треугольная факторизация L- 1А = U, где U - верхняя треугольная матрица. Далее вычисляется матрица U- 1, и затем вычисляется А- 1 = U- 1L-1.
Дж. Форсайт, М. Малькольм, К. Моулер. Машинные методы математических вычислений. М.: Мир, 1980.
SUBROUTINE AIG4R (A, M, N, NLEAD, Z, IERR)
Параметры
| A - | вещественный двумерный массив размера М на N, в котором задается исходная матрица; на выходе содержит вычисленную обращенную матрицу; | 
| M - | первая размерность массива А в вызывающей программе (тип: целый); | 
| N - | порядок обращаемой матрицы (тип: целый); | 
| NLEAD - | целый вектор длины N, содержащий на выходе информацию о выполненных в ходе факторизации перестановках (см. замечания по использованию); | 
| Z - | вещественный рабочий вектор длины N; | 
| IERR - | целая переменная, содержащая на выходе информацию о прохождении счета; при этом: | 
| IЕRR=65 - | если М ≤ 0 или N ≤ 0; | 
| IЕRR=66 - | если в процессе работы подпрограммы произошло переполнение (это говорит о том, что некоторые элементы матрицы U или матрицы А- 1 превосходят по абсолютной величине максимальное представимое на данной машине число); | 
| IЕRR=-К - | если матрица А вырождена (К - номер последней из строк матрицы U, содержащих нулевой диагональный элемент). | 
Версии
| AIG4D - | обращение методом Гаусса с выбором ведущего элемента по столбцу вещественной матрицы А, заданной с удвоенной точностью. | 
| AIG4C - | обращение методом Гаусса с выбором ведущего элемента по столбцу комплексной матрицы А. | 
Вызываемые подпрограммы
| AFG5R - | подпрограмма треугольной факторизации матрицы А. | 
| UTAFSI - | подпрограмма выдачи диагностических сообщений. | 
Замечания по использованию
| 1. | В подпрограмме АIG4D массивы А и Z имеют тип DОUВLЕ РRЕСISIОN, для факторизации матрицы А вызывается подпрограмма АFG5D. | |
| 2. | В подпрограмме АIG4С массивы А и Z имеют тип СОМРLЕХ, для факторизации матрицы А вызывается подпрограмма АFG5С. | |
| 3. | На выходе К - й элемент вектора NLЕАD равен номеру строки, переставленной на К - м шаге факторизации с К - й строкой матрицы А. Поскольку факторизация Гаусса требует N - 1 шагов, то NLЕАD (N) = N. | |
| 4. | Если вырабатывается значение IЕRR ≠ 0, то выдается соответствующее диагностическое сообщение и происходит выход из подпрограммы. | 
         DIMENSION A(4, 4), Z(4), NLEAD(4)
         DATA A /7.9, 8.5, 4.3, 3.2, 5.6, -4.8, 4.2, -1.4, 5.7, 0.8, -3.2, 
        *              -8.9, -7.2, 3.5, 9.3, 3.3/
         M = 4
         N = 4
         CALL  AIG4R (A, M, N, NLEAD, Z, IERR)
Результаты:    NLЕАD = (2, 2, 4, 4)
               |  0.05056    0.05429    0.00629     0.03500 |
      A  =  |  0.05189    0.08460    0.07212    -0.00030 |
               | -0.00841    0.04319    0.02021    -0.12113 |
               | -0.04971    0.02797    0.07900     0.05773 |