diff --git a/LDDsimulation/LDDsimulation.py b/LDDsimulation/LDDsimulation.py
index 43ff853f7434949df4af579501db2022fdaa6174..bdbb20a198bef5e5060fd22fa8dae6872969f725 100644
--- a/LDDsimulation/LDDsimulation.py
+++ b/LDDsimulation/LDDsimulation.py
@@ -30,7 +30,7 @@ class LDDsimulation(object):
 
     def __init__(self, dimension: int = 2,#
                  debug: bool = False,#
-                 tol: float = None,#
+                 tol: float = 1E-14,#
                  LDDsolver_tol: float = 1E-8,
                  # maximal number of L-iterations that the LDD solver uses.
                  max_iter_num: int = 1000,
@@ -88,8 +88,8 @@ class LDDsimulation(object):
         # # no sponge zones
         # self.sponge = False
         # set up mpi for internal parallelisation.
-        # self._mpi_rank = df.MPI.rank(df.MPI.comm_world)
-        # self._mpi_communicator = df.MPI.comm_world
+        self._mpi_rank = df.MPI.rank(df.MPI.comm_world)
+        self._mpi_communicator = df.MPI.comm_world
 
 
         ## Public variables.
@@ -606,8 +606,8 @@ class LDDsimulation(object):
                 filename = self.output_dir+self.output_filename_parameter_part[ind]\
                 + "solution_iterations_at_timestep"\
                 + "{number}".format(number=self.timestep_num) +".xdmf"
-                solution_over_iteration_within_timestep.update( #self._mpi_communicator,
-                    {ind: SolutionFile(filename)}
+                solution_over_iteration_within_timestep.update( #
+                    {ind: SolutionFile(self._mpi_communicator, filename)}
                     )
 
             # reset all interface[has_interface].current_iteration[ind] = 0, for
@@ -881,8 +881,8 @@ class LDDsimulation(object):
             self.output_filename_parameter_part.update(
                 {subdom_ind: filename_param_part}
             )
-            self.solution_file.update( #self._mpi_communicator, 
-                {subdom_ind: SolutionFile(filename)}
+            self.solution_file.update( #
+                {subdom_ind: SolutionFile(self._mpi_communicator, filename)}
                 )
             # self.postprocessed_solution_file.update(
             #     {subdom_ind: SolutionFile(self._mpi_communicator, post_filename)}
diff --git a/LDDsimulation/solutionFile.py b/LDDsimulation/solutionFile.py
index 22bfdfd804aa1b13e5529d479fd1ecbbc28539e0..e71450f1e1dd1d9dd951c974ea994a6db5519d17 100644
--- a/LDDsimulation/solutionFile.py
+++ b/LDDsimulation/solutionFile.py
@@ -6,8 +6,8 @@ class SolutionFile(df.XDMFFile):
     This class extends `df.XDMFFile` with some minor changes for convenience.
     """
     def __init__(self, mpicomm, filepath):
-        df.XDMFFile.__init__(self, filepath)
-        # mpicomm, 
+        df.XDMFFile.__init__(self, mpicomm, filepath)
+
         self.parameters["functions_share_mesh"] = True
         self.parameters["flush_output"] = True
         self.path = filepath # Mimic the file path attribute from a `file` returned by `open`