
Расчетное задание / КМ2 / ТФ-11-19 Рыжков М.В. Вариант 16
.pdf10CONTINUE
!Вывод результатов
!CALL WRRRN ('X', N, 2, X, N, 0)
!Решение исходного уравнения
CALL LFCRB (N, A, LDA, NLCA, NUCA, FAC, LDFAC, IPVT, RCOND)
!Вывод оценки числа обусловленности
!CALL UMACH (2, NOUT)
!WRITE (NOUT,99999) RCOND, 1.0E0/RCOND
!Настройка столбцов идентификаторов
CALL SSET (N, 0.0E0, RJ, 1) DO 20 J=1, N
RJ(J) = 1.0E0
CALL LFIRB (N, A, LDA, NLCA, NUCA, FAC, LDFAC, IPVT, RJ, IPATH, AINV(1,J), RES)
RJ(J) = 0.0E0 20 CONTINUE
!Вывод результатов
!CALL WRRRN ('AINV', N, N, AINV, N, 0)
! 99999 FORMAT (' RCOND = ',F5.3,/,' L1 Condition number = ',F6.3)
! Решение исходного уравнения
CALL LSLRB (N, A, LDA, NLCA, NUCA, B, IPATH, X)
!Вывод результатов
!CALL WRRRN ('X', 1, N, X, 1, 0) END DO
T=Timef()
PRINT *,' TIME: ',T end program one
21

22
10. Листинг программы двойной точности program double
implicit none
INTEGER*8 IPATH, LDA, LDFAC, N, NLCA, NUCA, j, k, i PARAMETER (IPATH=1, LDA=3, LDFAC=4, N=4,NLCA=1,NUCA=1)
INTEGER |
IPVT(N) |
REAL*8 |
A(LDA,N),z(N,4) , p(11000000,8) |
REAL*8 |
RCOND, FAC(LDFAC,N) |
REAL*8 |
X(N,2), RES(N), AINV(N,N), B(N,4), RJ(N) |
REAL T,Timef
EXTERNAL DLFTRB, DLFSRB, DWRRRN, DLFCRB, DLFIRB, DSET, UMACH, DLSLRB
T=Timef()
do i=1,11000000
do j=1,8
p(i,j) = i+j
END DO
END DO
do i = 1,11000000,7
do j = 1,8,1
A(1,j)=p(i,j)
A(2,j)=p(i+1,j)
A(3,j)=p(i+2,j)
A(4,j)=p(i+3,j)
A(5,j)=p(i+4,j)
A(6,j)=p(i+5,j)
A(7,j)=p(i+6,j)
END DO
!Зададим правую часть линейной системы
DO k=1,N
DO j=1,4 B(k,j)=j+k
END DO END DO
!Решение исходного уравнения
CALL DLFTRB (N, A, LDA, NLCA, NUCA, FAC, LDFAC, IPVT)
! Решение для правых сторон
DO 10 J=1, 4
CALL DLFSRB (N, FAC, LDFAC, NLCA, NUCA, IPVT, B(1,J), IPATH, X(1,J))
10CONTINUE
!Вывод результатов
23

!CALL DWRRRN ('X', N, 2, X, N, 0)
!Решение исходного уравнения
CALL DLFCRB (N, A, LDA, NLCA, NUCA, FAC, LDFAC, IPVT, RCOND)
!Вывод оценки числа обусловленности
!CALL UMACH (2, NOUT)
!WRITE (NOUT,99999) RCOND, 1.0E0/RCOND CALL DSET (N, 0.0E0, RJ, 1) DO 20 J=1, N
RJ(J) = 1.0E0
CALL DLFIRB (N, A, LDA, NLCA, NUCA, FAC, LDFAC, IPVT, RJ, IPATH, AINV(1,J), RES)
RJ(J) = 0.0E0
20CONTINUE
!Вывод результатов
!CALL DWRRRN ('AINV', N, N, AINV, N, 0)
! 99999 FORMAT (' RCOND = ',F5.3,/,' L1 Condition number = ',F6.3) ! Решение исходного уравнения
CALL DLSLRB (N, A, LDA, NLCA, NUCA, B, IPATH, X)
!Вывод результатов
!CALL DWRRRN ('X', 1, N, X, 1, 0) END DO
T=Timef()
PRINT *,' TIME: ',T end program double
24
11. Результаты измерений времени выполнения расчета
Параметры системы:
Операционная система: Windows 10 Корпоративная LTSC (10.0, Build 17763) Тип системы: 64-разрядная ОС, процессор х64
Модель ПК: Lenovo G70-80 (LENOVO 80FF)
Процессор: Название: Intel(R) Core(TM) i3-5020U CPU @ 2.20GHz
Установленная память (ОЗУ): 16,00 Гб Количество ядер: 2 Количество логических процессоров: 4
Результаты измерений |
Описание |
Время,с |
A |
Расчет в режиме debug с |
86,2310 |
|
одинарной точностью |
|
B |
Расчет в режиме debug с |
112,1570 |
|
двойной точностью |
|
25
12.Список литературы
1.Ю. Б. Воробьев Методические указания по проведению лабораторных работ по дисциплине "Компьютерные и сетевые технологии ЯЭ".
2.IMSL. Math Library. Volumes 1 and 2.
3.О. В. Бартеньев «Фортран для профессионалов. Математическая библиотека
IMSL»
4.Л. С. Шихобалов «Матрицы и определители».
26