Текст подпрограммы и версий ( Фортран )
adh1r.zip   adh1d.zip   adh1c.zip
Тексты тестовых примеров ( Фортран )
tadh1r.zip   tadh1d.zip   tadh1c.zip
Текст подпрограммы и версий ( Си )
adh1r_c.zip   adh1d_c.zip   adh1c_c.zip
Тексты тестовых примеров ( Си )
tadh1r_c.zip   tadh1d_c.zip   tadh1c_c.zip
Текст подпрограммы и версий ( Паскаль )
adh1r_p.zip   adh1e_p.zip   adh1c_p.zip
Тексты тестовых примеров ( Паскаль )
tadh1r_p.zip   tadh1e_p.zip   tadh1c_p.zip

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

Назначение

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

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

Положительно определенная симметричная матрица  А приводится к действительной невырожденной нижней треугольной матрице  L, такой, что LLT = A. Определитель матрицы  А вычисляется как квадрат определителя матрицы  L и записывается в виде:

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

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

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

    SUBROUTINE  ADH1R (A, D1, D2, N, IERR) 

Параметры

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

Версии

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

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

AFH1R - треугольное разложение положительно определенной симметричной матрицы методом квадратного корня (методом Холецкого) с компактной формой представления симметричной и треугольной матриц.
AFH1D - треугольное разложение положительно определенной симметричной матрицы методом квадратного корня с компактной формой представления симметричной и треугольной матриц с повышенной точностью.
AFH1C - треугольное разложение положительно определенной эрмитовой матрицы с компактной формой представления методом квадратного корня.

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

  1. 

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

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

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

      DIMENSION  A(6)
      DATA  A /1., 2., 20., 3., 26., 70./
      N = 3
      CALL  ADH1R (A, D1, D2, N, IERR)

Результаты:

       D1 = 0.140625 ,     D2 = 12 ,

  т.е.    det A = 0.140625*212 = 576