Текст подпрограммы и версий ( Фортран ) afh7r.zip , afh7d.zip |
Тексты тестовых примеров ( Фортран ) tafh7r.zip , tafh7d.zip |
Текст подпрограммы и версий ( Си ) afh7r_c.zip , afh7d_c.zip |
Тексты тестовых примеров ( Си ) tafh7r_c.zip , tafh7d_c.zip |
Текст подпрограммы и версий ( Паскаль ) afh7r_p.zip , afh7e_p.zip , |
Тексты тестовых примеров ( Паскаль ) tafh7r_p.zip , tafh7e_p.zip |
Численное треугольное разложение симметричной положительно определенной разреженной матрицы, заданной в формате RR (U) U.
Описания форматов RR (U) U и RR (U) О приведены в описаниях подпрограмм AM21R и ASH4R соответственно.
Пусть симметричная положительно определенная разреженная матрица А порядка N задана в формате RR (U) U. Подпрограмма AFH7R вычисляет элементы матрицы U по заданному ее портрету в формате RR (U) О, такую, что A = UTDU, где U - верхняя треугольная матрица с единичной диагональю, а D - диагональная матрица. Портрет матрицы U может быть предварительно получен при помощи подпрограммы AFH6R сначала в формате RR (U) U, а затем упорядочен в формат RR (U) О путем двухкратного применения подпрограммы AMTCR .
С.Писсанецки. Технология разреженных матриц. - М.: Мир, 1988.
SUBROUTINE AFH7R ( IA, JA, AN, AD, N, IU, JU, UN, DI, IP, IUP)
Параметры
IA, JA, - AN, AD | заданные портрет и ненулевые элементы матрицы A в формате RR (U) U; |
N - | заданный порядок матрицы А (тип: целый); |
IU, JU - | заданный портрет матрицы U в формате RR (U) O; |
UN - | вещественный одномерный массив длины N, в который помещаются вычисленные ненулевые элементы матрицы U в соответствии с ее портретом; |
DI - | вещественный одномерный массив длины N, в который помещаются вычисленные элементы матрицы, обратной к диагональной матрице D разложения; |
IP, IPU - | целые одномерные массивы длины N, используемые в подпрограмме в качестве рабочих; |
Версии
AFH7D - | численное треугольное разложение симметричной положительно определенной разреженной матрицы, заданной в формате RR (U) U, в режиме удвоенной точности; при этом параметры AN, AD, UN и DI должны имет тип DOUBLE PRECISION. |
Вызываемые подпрограммы: нет
Замечания по использованию: нет
DIMENSION IA(6), JA(4), IU(6), JU(4), IP(5), * IUP(5), AN(4), AD(5), UN(4), DI(5) DATA IA /1, 2, 3, 4, 5, 5/ DATA JA /5, 5, 5, 5/ DATA IU /1, 2, 3, 4, 5, 5/ DATA JU /5, 5, 5, 5/ DATA AN /2., 0.5, 2., 1./ DATA AD /16., 0.625, 3., 0.5, 4./ N = 5 CALL AFH7R (IA, JA, AN, AD, N, IU, JU, UN, DI, IP, IUP) Результаты: UN = .125000E+00, .800000E+00, .666667E+00, .200000E+01 DI = .625000E-01, .160000E+01, .333333E+00, .200000E+01, .600002E+02