From 654a3c8d106d87d91e8da0e4e9fdd5b9c733bf71 Mon Sep 17 00:00:00 2001 From: Ann Almgren Date: Fri, 10 May 2019 09:37:07 -0700 Subject: [PATCH] Update inputs page telling how the inputs are used to set the timestep. --- docs/source/InputsTimeStepping.rst | 40 ++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/docs/source/InputsTimeStepping.rst b/docs/source/InputsTimeStepping.rst index 7e25a7a..4c92e07 100644 --- a/docs/source/InputsTimeStepping.rst +++ b/docs/source/InputsTimeStepping.rst @@ -3,7 +3,11 @@ Time Stepping ============= -The following inputs must be preceded by "amr." +The following inputs must be preceded by "amr." Note that if both are specified, both criteria +are used and the simulation still stop when the first criterion is hit. In the case of unsteady flow, +the simulation will stop when either the number of steps reaches max_step or time reaches stop_time. +In the case of unsteady flow, the simulation will stop when either the tolerance (difference between +subsequent steps) is reached or the number of iterations reaches the maximum number specified. +------------------+-----------------------------------------------------------------------+-------------+-----------+ | | Description | Type | Default | @@ -32,8 +36,40 @@ Currently, the criterion for setting "steady_state" to true is if "dt" is undefi +-----------------------+-----------------------------------------------------------------------+-------------+------------+ | | Description | Type | Default | -+======================-+=======================================================================+=============+============+ ++=======================+=======================================================================+=============+============+ | steady_state_tol | Tolerance for checking if we have reached steady state | Real | 1.e-5 | +-----------------------+-----------------------------------------------------------------------+-------------+------------+ | steady_state_max_iter | Maximum number of allowed iterations to converge to steady state | Int | 100000000 | +-----------------------+-----------------------------------------------------------------------+-------------+------------+ + + +Setting the Time Step +===================== + +There are several ways that the inputs are used to determine what time step +is used in the evolution of the fluid-particle system in MFiX-Exa. + +1) In a pure particle case, the "mfix.fixed_dt", if specified, is only used to determine the frequency +of outputs, it has no effect on the dt used in the particle evaluation. [WHAT HAPPENS IF FIXED_DT +NOT SPECIFIED?] + +That is determined by the following calculation: + +2) In a pure fluid case, there are two options: + + * If you want to fix the dt, simply set :cpp:`mfix.fixed_dt = XXX` and the fluid time + step will always be that number. [SHOULD WE ABORT IF YOU ALSO SET CFL? OR SPECIFY + THAT FIXED_DT OVERRIDES CFL?] + + * If you want to let the code determine the appropriate time step using the advective CFL + condition, then set :cpp:`mfix.cfl = 0.5` for example, and the fluid time step will + be computed to be dt = 0.5 * dx / max(vel). + +Note that these choices apply to steady state calculations as well as unsteady runs. + + +3) In a coupled particle-fluid case, dt is set as in the pure-fluid case. In this case + the particle time step is first computed as in the particle-only case, then is adjusted + so that an integral number of particle steps fit into a single fluid time step. + +[HOW ARE DT_MIN AND DT_MAX USED???] -- GitLab