c c Each process must use a different seed. c seed = 123456789 + id q = 0.0D+00 do sample = 1, sample_num call r8vec_uniform_01 ( dim_num, seed, x ) q = q + f ( dim_num, x ) end do q = q / dble ( sample_num ) q_error = abs ( q - q_exact ) write ( *, '(2x,i8,2x,i8,2x,i8,2x,f16.10,2x,g16.6)' ) & id, sample_num, dim_num, q, q_error c c Have each process sent results to process MASTER for reduction c to final result. c call MPI_Reduce ( q, q_total, 1, MPI_DOUBLE_PRECISION, MPI_SUM, & master, MPI_COMM_WORLD, ierr )