|
Текст подпрограммы и версий ( Фортран ) afb1r.zip , afb1d.zip |
Тексты тестовых примеров ( Фортран ) tafb1r.zip , tafb1d.zip |
|
Текст подпрограммы и версий ( Си ) afb1r_c.zip , afb1d_c.zip |
Тексты тестовых примеров ( Си ) tafb1r_c.zip , tafb1d_c.zip |
|
Текст подпрограммы и версий ( Паскаль ) afb1r_p.zip , afb1e_p.zip |
Тексты тестовых примеров ( Паскаль ) tafb1r_p.zip , tafb1e_p.zip |
Треугольное разложение ленточной матрицы, заданной в компактной форме, с выбором ведущего элемента по столбцу.
Заданная в компактной форме ленточная матрица А приводится к ленточной верхней треугольной матрице U при помощи элементарного преобразования L так, что LU = А. Матрица L является ленточной нижней треугольной с единичными диагональными элементами.
Дж.Х.Уилкинсон, Алгебраическая проблема собственных значений, "Наука", М., 1970.
SUBROUTINE AFB1R (A, N, NLC, NUC, R, IERR)
Параметры
| A - | вещественный двумерный массив размера N *(NLС + NUС + 1), в котором содержится заданная матрица, записанная в компактной форме; по окончании работы подпрограммы в массиве А запоминается также в компактной форме ленточная верхняя треугольная матрица U (в первых NUС + 1 столбцах); |
| N - | порядок матрицы (тип: целый); |
| NLC - | число ненулевых диагоналей, расположенных под главной диагональю (тип: целый); |
| NUC - | число ненулевых диагоналей, расположенных над главной диагональю (тип:целый); |
| R - | вещественный двумерный массив размера N * (NLС + 1), используемый как рабочий; по окончании работы подпрограммы в первых N*NLС компонентах массива R содержится нижняя треугольная ленточная матрица L; |
| IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом: |
| IЕRR=65 - | если заданная матрица является алгоритмически сингулярной. |
Версии
| AFB1D - | треугольное разложение ленточной матрицы, заданной в компактной форме с удвоенной точностью (выбор ведущего элемента по столбцу). |
Вызываемые подпрограммы
| UTBF10 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы АFВ1R. |
| UTBF11 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы АFВ1D. |
Замечания по использованию
| Для подпрограммы АFВ1D параметры А и R должны иметь тип DОUВLЕ РRЕСISIОN. |
DIMENSION A(3, 3), R(3, 2)
DATA A /0., -1., 10., 1., 22., 18., 3., 5., 0./
N = 3
NLC = 1
NUC = 1
CALL AFB1R (A, N, NLC, NUC, R, IERR)
Результаты:
A = (1., 25., 16., 3., 5., 0., 0., 0., 0.),
R = (0., -1., 0.4, 1., 2., 3.),
IERR = 0