Текст подпрограммы и версий ( Фортран )
ast4r.zip , ast4d.zip
Тексты тестовых примеров ( Фортран )
tast4r.zip , tast4d.zip
Текст подпрограммы и версий ( Си )
ast4r_c.zip , ast4d_c.zip
Тексты тестовых примеров ( Си )
tast4r_c.zip , tast4d_c.zip
Текст подпрограммы и версий ( Паскаль )
ast4r_p.zip , ast4e_p.zip
Тексты тестовых примеров ( Паскаль )
tast4r_p.zip , tast4e_p.zip

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

Назначение

Решение разреженной линейной системы с верхней треугольной матрицей с единичной диагональю, представленной в формате RR (U) U.

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

Описание формата RR (U) U приведено в описании подпрограммы AM21R (индекс 18.8.16).

Пусть разреженная верхняя треугольная матрица  U порядка  N с единичной диагональю задана в строчном формате RR (U) U. Требуется найти решение линейной системы UX = B.

Решение систем такого вида осуществляется обратной подстановкой по следующим расчетным формулам:

              xn  =  bn
                                   n
              xi   =  bi  -    ∑      ui k xk ,       i = n - 1, ..., 2, 1
                                k= i +1 

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

    SUBROUTINE  AST4R ( IU, JU, UN, B, N, X) 

Параметры

IU, JU, -
         UN  
заданные портрет и ненулевые элементы верхней треугольной матрицы  U с единичной диагональю в формате RR (U) U;
B - вещественный одномерный массив длины  N, содержащий компоненты вектора правой части системы;
N - заданный порядок системы (тип: целый);
X - вещественный одномерный массив длины  N, содержащий компоненты вычисленного вектора решения.

Версии

AST4D - решение разреженной линейной системы с верхней треугольной матрицей с единичной диагональю в режиме удвоенной точности; при этом параметры UN, B и X должны иметь тип DOUBLE PRECISION.

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

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

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

      DIMENSION  IU(5), JU(3), UN(3), X(4), B(4)
      DATA  IU /1, 2, 3, 4, 4/,
     *           JU /4, 3, 4/,
     *           UN /1., 1., 1./,
     *           B /1., 1., 1., 1./
      N = 4
      CALL  AST4R (IU, JU, UN, B, N, X)

Результаты:   X = (0, 1, 0, 1)