Текст подпрограммы и версий ( Фортран )
aib1r.zip  aib1d.zip 
Тексты тестовых примеров ( Фортран )
taib1r.zip  taib1d.zip 
Текст подпрограммы и версий ( Си )
aib1r_c.zip  aib1d_c.zip 
Тексты тестовых примеров ( Си )
taib1r_c.zip  taib1d_c.zip 
Текст подпрограммы и версий ( Паскаль )
aib1r_p.zip  aib1e_p.zip 
Тексты тестовых примеров ( Паскаль )
taib1r_p.zip  taib1e_p.zip 

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

Назначение

Обращение ленточной матрицы, заданной в компактной форме, с выбором ведущего элемента по столбцу.

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

Подпрограмма АIВ1R вычисляет матрицу B, такую что А*В = Е, где А - исходная ленточная, а Е - единичная матрицы. Обращение осуществляется с выбором главного элемента по столбцу.

Дж.Х.Уилкинсон, Алгебраическая проблема собственных значений. "Наука", М., 1970.

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

    SUBROUTINE  AIB1R (A, B, N, NLC, NUC, R, IERR) 

Параметры

A - вещественный двумерный массив размера N на (NLС+NUС+1), в котором содержится заданная матрица, записанная в компактной форме;
B - вещественный двумерный массив размера N на N, в котором записывается вычисленная обратная матрица;
N - порядок матрицы (тип: целый);
NLC - число ненулевых диагоналей матрицы, расположенных под главной диагональю (тип: целый);
NUC - число ненулевых диагоналей матрицы, расположенных над главной диагональю (тип: целый);
R - вещественный двумерный массив размера N на (NLС+1), используемый как рабочий;
IERR - целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом:
IЕRR=65 - если заданная матрица является алгоритмически сингулярной.

Версии

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

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

UTBF10 - подпрограмма печати диагностических сообщений при работе подпрограммы АIВ1R;
UTBF11 - подпрограмма печати диагностических сообщений при работе подпрограммы АIВ1D.

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

 

При работе подпрограммы исходная матрица не сохраняется. На место вектора А помещается его треугольное разложение.

Для подпрограммы АIВ1D параметры А, B, R должны иметь тип DОUВLЕ РRЕСISIОN.

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

         DIMENSION  A(3, 3), B(3, 3), R(3, 2)
         DATA  A /0., 1., 2., 1., 3., 3., -1., -2., 0./
         N = 3
         NLC = 1
         NUC = 1
         CALL  AIB1R (A, B, N, NLC, NUC, R, IERR)

Результаты:

         B = (0.8125, -0.1875, 0.125, 0.1875, 0.1875, -0.125, 0.125, 0.125, 
                 0.25), 
         IERR  =  0