#include #include #include #define min(a,b) (a)<(b)?(a):(b) int main (int argc, char* argv[]) { int size, rank, count; MPI_Status stat; MPI_Init(&argc,&argv); MPI_Comm_size(MPI_COMM_WORLD,&size); MPI_Comm_rank(MPI_COMM_WORLD,&rank); int n,i,j; int a, b; double k,tau,h,ttt; double t1,t2; double t3, t4, t5, t6,t7; if(rank == 0) { printf(" n->"); scanf("%d",&n); printf(" T->"); scanf("%lf",&ttt); printf(" k->"); scanf("%lf",&k); t1 = MPI_Wtime(); for(i=1;i1) h = 1./(double)(n-1); else h = 1; tau = 0.5*h*h/k; count = n /(size); if(rank==0) i = 0; a=count*rank+1; b=min((count)*(rank+1),n-2); while(tau*i++