ВУЗ:
Рубрика:
76
C
df(x)=dsin(x)
Call MPI_INIT(Ierr)
Call MPI_COMM_SIZE(MPI_COMM_WORLD, Size, Ierr)
Call MPI_COMM_RANK(MPI_COMM_WORLD, Rank, Ierr)
C Каждый процесс определяет «свое» число интервалов
С разбиения и определяет свои пределы интегрирования по x
m=n/size
hh=(b-a)/size
a1=a+rank*hh
b1=a1+hh
h1=(b1-a1)/m
time=mpi_Wtime()
C Каждый процесс определяет свою частичную сумму по x
s=0
k=0
if(rank==0) k=1
!В «общих» граничных точках интеграл F(x) вычисляет
do i=k,m-1 ! процесс c большим номером rank
x=a1+i*h1
d=df(x)
call integral(c, d, x, eps, s1)
s=s+s1*h1
end do
C Вычисление F(x) в крайних узлах
if(rank==0) then
d=df(a1)
call integral(c, d, a1, eps, s1)
s=s+s1/2*h1
end if
if (rank==size-1) then
d=df(b1)
call integral(c, d, b1, eps, s1)
s=s+s1/2*h1
end if
Страницы
- « первая
- ‹ предыдущая
- …
- 74
- 75
- 76
- 77
- 78
- …
- следующая ›
- последняя »
