From 4ee0567404d02215e6d7641b88acae6d811f6bbd Mon Sep 17 00:00:00 2001
From: David <forenkram@gmx.de>
Date: Thu, 15 Oct 2020 21:55:37 +0200
Subject: [PATCH] update the main functions

---
 .../layered_soil/TP-R-layered_soil-all-params-one.py | 11 ++++++++++-
 ...ayered_soil-g-but-same-perm-coarse-dt-longterm.py | 11 ++++++++++-
 .../TP-R-layered_soil-g-but-same-perm.py             | 12 ++++++++++--
 3 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-all-params-one.py b/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-all-params-one.py
index 2815053..1a5e7be 100755
--- a/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-all-params-one.py
+++ b/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-all-params-one.py
@@ -402,18 +402,27 @@ if __name__ == '__main__':
         for mesh_resolution, solver_tol in resolutions.items():
             simulation_parameter.update({"solver_tol": solver_tol})
             hlp.info(simulation_parameter["use_case"])
+            processQueue = mp.Queue()
             LDDsim = mp.Process(
                         target=hlp.run_simulation,
                         args=(
                             simulation_parameter,
+                            processQueue,
                             starttime,
                             mesh_resolution
                             )
                         )
             LDDsim.start()
-            LDDsim.join()
+            # LDDsim.join()
             # hlp.run_simulation(
             #     mesh_resolution=mesh_resolution,
             #     starttime=starttime,
             #     parameter=simulation_parameter
             #     )
+
+        LDDsim.join()
+        if mesh_study:
+            simulation_output_dir = processQueue.get()
+            hlp.merge_spacetime_errornorms(isRichards=isRichards,
+                                           resolutions=resolutions,
+                                           output_dir=simulation_output_dir)
diff --git a/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm-coarse-dt-longterm.py b/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm-coarse-dt-longterm.py
index e10649a..3861275 100755
--- a/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm-coarse-dt-longterm.py
+++ b/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm-coarse-dt-longterm.py
@@ -417,18 +417,27 @@ if __name__ == '__main__':
         for mesh_resolution, solver_tol in resolutions.items():
             simulation_parameter.update({"solver_tol": solver_tol})
             hlp.info(simulation_parameter["use_case"])
+            processQueue = mp.Queue()
             LDDsim = mp.Process(
                         target=hlp.run_simulation,
                         args=(
                             simulation_parameter,
+                            processQueue,
                             starttime,
                             mesh_resolution
                             )
                         )
             LDDsim.start()
-            LDDsim.join()
+            # LDDsim.join()
             # hlp.run_simulation(
             #     mesh_resolution=mesh_resolution,
             #     starttime=starttime,
             #     parameter=simulation_parameter
             #     )
+
+        LDDsim.join()
+        if mesh_study:
+            simulation_output_dir = processQueue.get()
+            hlp.merge_spacetime_errornorms(isRichards=isRichards,
+                                           resolutions=resolutions,
+                                           output_dir=simulation_output_dir)
diff --git a/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm.py b/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm.py
index a47f33f..4d1e0bb 100755
--- a/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm.py
+++ b/Usecases/Two-phase-Richards/multi-patch/layered_soil/TP-R-layered_soil-g-but-same-perm.py
@@ -361,7 +361,6 @@ f = open(thisfile, 'r')
 print(f.read())
 f.close()
 
-
 # MAIN ########################################################################
 if __name__ == '__main__':
     # dictionary of simualation parameters to pass to the run function.
@@ -411,18 +410,27 @@ if __name__ == '__main__':
         for mesh_resolution, solver_tol in resolutions.items():
             simulation_parameter.update({"solver_tol": solver_tol})
             hlp.info(simulation_parameter["use_case"])
+            processQueue = mp.Queue()
             LDDsim = mp.Process(
                         target=hlp.run_simulation,
                         args=(
                             simulation_parameter,
+                            processQueue,
                             starttime,
                             mesh_resolution
                             )
                         )
             LDDsim.start()
-            LDDsim.join()
+            # LDDsim.join()
             # hlp.run_simulation(
             #     mesh_resolution=mesh_resolution,
             #     starttime=starttime,
             #     parameter=simulation_parameter
             #     )
+
+        LDDsim.join()
+        if mesh_study:
+            simulation_output_dir = processQueue.get()
+            hlp.merge_spacetime_errornorms(isRichards=isRichards,
+                                           resolutions=resolutions,
+                                           output_dir=simulation_output_dir)
-- 
GitLab