diff --git a/parallel.py b/parallel.py index 2db4f32..2ef473d 100644 --- a/parallel.py +++ b/parallel.py @@ -304,6 +304,7 @@ class PPP: def gaussian_filter(self,key,sigma,truncate=4.0,key_out=None,iterate=False): '''Applies a gaussian filter to a field as in-place operation. Sigma is the std of the filter in terms of grid width.''' import numpy as np + from mpi4py import MPI if key_out is None: key_out = key if key!=key_out: @@ -328,7 +329,8 @@ class PPP: "increase number of ghost cells. {}".format(radius) parprint('Gaussian filter: iterations={}, stencil radius={}'.format(niter,radius)) for iiter in range(niter): - parprint('Iter #{:d}'.format(iiter)) + parprint('Iter #{:d}: '.format(iiter),end='') + tbeg = MPI.Wtime() # Filter field: if key_out is None, perform operation inplace self.field[key_out] = self.field[key].gaussian_filter(sigma, truncate=truncate,only_keep_interior=False) @@ -337,6 +339,7 @@ class PPP: self.impose_boundary_conditions(key_out) # Iterate inplace from now on key = key_out + parprint('{:g} sec'.format(MPI.Wtime()-tbeg)) def broadcast(self,key,operation,arg,key_out=None): '''Broadcasts an operation involving a scalar or matrix on