Текст подпрограммы и версий ( Фортран )
aih1r.zip  aih1d.zip 
Тексты тестовых примеров ( Фортран )
taih1r.zip  taih1d.zip 
Текст подпрограммы и версий ( Си )
aih1r_c.zip  aih1d_c.zip 
Тексты тестовых примеров ( Си )
taih1r_c.zip  taih1d_c.zip 
Текст подпрограммы и версий ( Паскаль )
aih1r_p.zip  aih1e_p.zip 
Тексты тестовых примеров ( Паскаль )
taih1r_p.zip  taih1e_p.zip 

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

Назначение

Обращение положительно определенной симметричной матрицы с компактной формой представления методом квадратного корня (методом Холецкого).

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

Подпрограмма АIН1R вычисляет матрицу в (симметричную в компактной форме), такую, что А*В = Е, где А - исходная положительно определенная симметричная матрица порядка N, заданная в компактной форме, а Е - единичная матрица. Используется метод квадратного корня (метод Холецкого).

В.В. Воеводин, Численные методы алгебры (теория и алгорифмы), Наука, М., 1966 г.

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

    SUBROUTINE  AIH1R (A, AINV, N, IERR) 

Параметры

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

Версии

AIH1D - обращение положительно определенной симметричной матрицы, записанной в компактной форме, методом квадратного корня (методом Холецкого) с повышенной точностью.

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

UTAI10 - подпрограмма печати диагностических сообщений при работе подпрограммы АIН1R.
UTAI11 - подпрограмма печати диагностических сообщений при работе подпрограммы АIН1D.

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

 

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

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

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

         DIMENSION  A(6), B(6)
         DATA  A /1., 2., 6., 1., 1., 2./
         N = 3
         CALL  AIH1R (A, B, N, IERR)

Результаты:     В = (11., -3., 1., -4., 1., 2.),

                         IERR  =  0.