First page Back Continue Last page Overview Graphics
Example:  PI in Fortran - 2
-       call MPI_BCAST( n, 1, MPI_INTEGER, 0,
     +                MPI_COMM_WORLD, ierr)
c                             check for quit signal
      if ( n .le. 0 ) goto 30
c                             calculate the interval size
      h = 1.0d0/n
      sum  = 0.0d0
      do 20 i = myid+1, n, numprocs
        x   = h * (dble(i) - 0.5d0)
        sum = sum + f(x)
 20   continue
      mypi = h * sum
c                             collect all the partial sums
      call MPI_REDUCE( mypi, pi, 1, MPI_DOUBLE_PRECISION,
     +                MPI_SUM, 0, MPI_COMM_WORLD,ierr)
Notes: