From 897965cb095a897fdfff6c39835bb2ce83716488 Mon Sep 17 00:00:00 2001
From: Jean-Baptiste Keck <Jean-Baptiste.Keck@imag.fr>
Date: Tue, 4 Jun 2019 22:58:38 +0200
Subject: [PATCH] add diffusion substepping parameter to the example interface

---
 examples/example_utils.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/examples/example_utils.py b/examples/example_utils.py
index 553aefb07..3e6393056 100644
--- a/examples/example_utils.py
+++ b/examples/example_utils.py
@@ -576,10 +576,14 @@ class HysopArgParser(argparse.ArgumentParser):
         method.add_argument('-vdm', '--vorticity-diffusion-mode', type=str, 
                 default='spectral', dest='vorticity_diffusion_mode',
                 help='Enforce either spectral or directional diffusion with finite differences for vorticity. Vorticity is a special case for diffusion because vorticity diffusion can be computed at the same time as the Poisson operator which recovers the velocity. Spectral diffusion of vorticity when divergence-free field projection is enabled is virtually free. The default value is spectral diffusion mode.')
+        method.add_argument('-edst', '--enable-diffusion-substepping',
+                dest='enable_diffusion_substepping', action='store_true',
+                help='Do not restrict timestep because of finite difference directional diffusion CFL but enforce substepping inside the operator depending on current timestep.')
 
         return method
 
     def _check_method_args(self, args):
+        self._check_default(args, 'enable_diffusion_substepping', bool, allow_none=False)
         self._check_default(args, ('compute_granularity', 'fd_order', 'strang_order',
                                     'reprojection_frequency'), int, allow_none=False)
         self._check_default(args, ('time_integrator', 'remesh_kernel', 'interpolation_filter', 
-- 
GitLab