xref: /phasta/phSolver/common/gtnods.c (revision c90fc7c7f5fb24b2f895d35b0e3ed7ab47e91476)
110167291SKenneth E. Jansen #include <stdio.h>
210167291SKenneth E. Jansen #include <mpi.h>
310167291SKenneth E. Jansen 
410167291SKenneth E. Jansen #include "common_c.h"
510167291SKenneth E. Jansen 
610167291SKenneth E. Jansen #include <FCMangle.h>
710167291SKenneth E. Jansen #define gtnods FortranCInterface_GLOBAL_(gtnods, GTNODS)
810167291SKenneth E. Jansen 
gtnods()910167291SKenneth E. Jansen void gtnods()
1010167291SKenneth E. Jansen {
1110167291SKenneth E. Jansen 
1210167291SKenneth E. Jansen 	if(workfc.numpe > 1) {
1310167291SKenneth E. Jansen 
1410167291SKenneth E. Jansen 		int irecvcount, ierr;
1510167291SKenneth E. Jansen 		long long numvec, loc_nshgt;
1610167291SKenneth E. Jansen 
1710167291SKenneth E. Jansen                 irecvcount = 1;
1810167291SKenneth E. Jansen 		numvec = (long long) newdim.nshg0;
1910167291SKenneth E. Jansen 
2010167291SKenneth E. Jansen //		printf("Local number of modes = %ld %d %d\n",numvec,newdim.nshg0, sizeof(newdim.nshg0));
2110167291SKenneth E. Jansen 
2210167291SKenneth E. Jansen 		ierr = MPI_Allreduce(&numvec, &loc_nshgt, irecvcount,
2310167291SKenneth E. Jansen                                 MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD);
2410167291SKenneth E. Jansen 
2510167291SKenneth E. Jansen 		newdim.nshgt = loc_nshgt;
2610167291SKenneth E. Jansen 	}
2710167291SKenneth E. Jansen 	else {
28*c90fc7c7SKenneth E. Jansen 		newdim.nshgt = (long long) conpar.nshg;
2910167291SKenneth E. Jansen 	}
3010167291SKenneth E. Jansen 
3110167291SKenneth E. Jansen 	if (workfc.myrank == workfc.master) {
3210167291SKenneth E. Jansen 		printf("Total number of modes = %ld\n",newdim.nshgt);
3310167291SKenneth E. Jansen  	}
3410167291SKenneth E. Jansen 
3510167291SKenneth E. Jansen }
36