正在加载图片...
int everagelength; printf("p(t)=) print(p, variableNum); In Int stop Pos: print(q, variableNum) FILE率fin for(i=1; i< size; 1++) MPI Get rank(MPI COMM WORLD MPI Send(&variableNum, I &rank) MPI INTL V TAG MPI COMM WORLD) MPI Get size(MPI COMM WORLD MPI DOUBLE COMPLEX, 1, P TAG PI COMM WORLD) MPI Send(g, variableNum fin= fopen("dataIn. txt,"T), MPI DOUBLE COMPLEX. if (fin==NULL) TAG MPI COMM WORLD) puts("Not find input data file"); puts("<example for dataIn. txt ") puts("2"); MPI Recv(&variableNum, I, MPI INT,O, puts("1.02") V TAG, MPI COMM WORLD, puts("2.0-1"), &status) exit( 1) MPI Recv(p, variableN MPI DOUBLE COMPLEX.O P TAG. PI COMM WORLD read Double Complex(fin, variableNum); MPI Recv(a, variableNum if((var um l)(variable Num MPI DOUBLE COMPLEX. O MAX N) Q TAG, MPI COMM WORLD, { &status) puts("variableNum out of range! " exit( 1) lEngth =2* variableNum for(i=0, 1< variableNum; 1++) readDouble Complex(fin, p); for(i=0; i< variableNum; 1++) read Complex(fin, q: sin(i 2"PI/lEngth) fclose(fin) puts("Read from data file l'dataIn. txt\"); verageLength lEngth/size;int everageLength; int moreLength; int startPos; int stopPos; FILE *fin; MPI_Init(&argc, &argv); MPI_Get_rank(MPI_COMM_WORLD, &rank); MPI_Get_size(MPI_COMM_WORLD, &size); if(rank == 0) { fin = fopen("dataIn.txt", "r"); if (fin == NULL) { puts("Not find input data file"); puts("Please create a file \"dataIn.txt\""); puts("<example for dataIn.txt> "); puts("2"); puts("1.0 2"); puts("2.0 -1"); exit(-1); } readDoubleComplex(fin, variableNum); if ((variableNum < 1)||(variableNum > MAX_N)) { puts("variableNum out of range!"); exit(-1); } for(i = 0; i < variableNum; i ++) readDoubleComplex(fin, p[i]); for(i = 0; i < variableNum; i ++) readDoubleComplex(fin, q[i]); fclose(fin); puts("Read from data file \"dataIn.txt\""); printf("p(t) = "); print(p, variableNum); printf("q(t) = "); print(q, variableNum); for(i = 1; i < size; i ++) { MPI_Send(&variableNum,1, MPI_INT,i, V_TAG, MPI_COMM_WORLD); MPI_Send(p,variableNum, MPI_DOUBLE_COMPLEX,i, P_TAG, PI_COMM_WORLD); MPI_Send(q,variableNum, MPI_DOUBLE_COMPLEX,i, Q_TAG, MPI_COMM_WORLD); } } else { MPI_Recv(&variableNum,1,MPI_INT,0, V_TAG,MPI_COMM_WORLD, &status); MPI_Recv(p,variableNum, MPI_DOUBLE_COMPLEX,0, P_TAG, PI_COMM_WORLD, &status); MPI_Recv(q,variableNum, MPI_DOUBLE_COMPLEX,0, Q_TAG,MPI_COMM_WORLD, &status); } wLength = 2*variableNum; for(i = 0; i < wLength; i ++) { w[i]= complex<double> (cos(i*2*PI/wLength), sin(i*2*PI/wLength)); } everageLength = wLength / size;
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有