From 63a2cc900517196c67ddb57cf4c223a81b696aa8 Mon Sep 17 00:00:00 2001
From: David Seus <david.seus@ians.uni-stuttgart.de>
Date: Tue, 13 Oct 2020 13:45:52 +0200
Subject: [PATCH] explain resolutions

---
 Usecases/README.md | 42 ++++++++++++++++++++++++------------------
 1 file changed, 24 insertions(+), 18 deletions(-)

diff --git a/Usecases/README.md b/Usecases/README.md
index 5fcb5c9..c74d53b 100644
--- a/Usecases/README.md
+++ b/Usecases/README.md
@@ -110,25 +110,31 @@ number_of_timesteps = 20
 This block sets mesh parameters, number of timesteps to be simulated, timestep
 size as well as whether or not a mesh study is being performed.
 In detail:
-- ~python mesh_study = True/False~ Toggle mesh study mode.
+- `python mesh_study = True/False`: Toggle mesh study mode.
   This changes the output slightly. Have a look at examples in the `mesh_study`
-  folders.
-- resolutions = {
-                # 1: 1e-6,
-                # 2: 1e-6,
-                # 4: 1e-6,
-                # 8: 1e-6,
-                # 16: 5e-6,
-                # 32: 5e-6,
-                64: 2e-6,
-                # 128: 1e-6,
-                # 256: 1e-6,
-                }
-
-- # starttimes gives a list of starttimes to run the simulation from.
-  # The list is looped over and a simulation is run with t_0 as initial time
-  #  for each element t_0 in starttimes.
-  starttimes = {0: 0.0}
+  folders. If the parameters is set to `True` the word mesh_study is appended
+  to the output directory and all mesh sizes are output into the same
+  directory.
+  If set to `False`, data for each mesh size gets its own directory.
+- `resolutions`: is a dictionary containing pairs `mesh_resolution: error_tol`
+  the key of each pair is the `mesh_resolution` parameter for `mshr` and the
+  value is `error_tol` is the error tolerance that is used to stop the iteration. The error criterion is the L^2-norm of subsequent iterates. Once all subsequent errors on all subdomains are lower than `error_tol`, the
+  LDD solver stops and the calculation of the time step is considerd finished.
+  Doubling the `mesh_resolution` parameter should result in halfing the grid
+  width. This is dependent on the geometry and is not always true for the first
+  few values given in the list above.
+  If more than one entry is given in `resolutions`, all pairs are being calculated in parallel. This is usefull if one is interested in the results
+  of the same usecase but calcuated for different mesh sizes.
+  Notably, if `mesh_study` is set you should have most of the above commented out.
+  '''
+  **!Warning!**
+  Notably the last to pairs take a long time to calculate and memory shortage
+  might be an issue depending on your machine.
+  '''
+
+- `python starttimes = {0: 0.0}` starttimes gives a list of starttimes to run the simulation from.
+  The list is looped over and a simulation is run with t_0 as initial time
+  for each element t_0 in starttimes
 - timestep_size = 0.001
 - number_of_timesteps = 20
 
-- 
GitLab