12 MPI_Comm_size(MPI_COMM_WORLD, &ws);
15 MPI_Allgather(&n, 1, MPI_INT, &N[0], 1, MPI_INT, MPI_COMM_WORLD);
17 for(
size_t i=0;i<N.size();++i)
19 return 1.0*(*std::max_element(N.begin(),N.end())*ws)/(1.0*total);
Abstract class for motion of the processor points.
Abstract class for tessellation.
virtual int GetPointNo(void) const =0
Get Total number of mesh generating points.
double GetLoadImbalance(Tessellation const &tlocal, int &total) const
Calcualtes the load imbalance as max(number of points per proc)/(avg per proc)
virtual ~ProcessorUpdate(void)
virtual destructor