Closed damianmerrick closed 1 year ago
Another point to consider is making time steps to change based on the transport and flow solution, not just the flow solution.
Hopefully this can be supported in MF-6 as it is a really helpful feature of MF-USG, it has saved me a lot of runtime while calibrating.
Cheers!
Adaptive Time Stepping has a lot of advantages with models where large stresses are applied in short periods - such as large dewatering projects here in Western Australia. For this reason I'm quite reluctant to switch to MODFLOW 6 until this feature is available.
Adaptive time stepping has been included in the latest release of Modflow 6, which is great. I came to this issue because of a Google search, as I tried to use Modpath on a Modflow 6 model with adaptive time stepping. So I think I found a partial answer to the last question @damianmerrick posed:
- Will output from ATS models cause problems for downstream processing programs such as MODPATH, MT3D-USGS, ZoneBudget?
I think it is not possible to use Modpath on a Modflow 6 model with adaptive time stepping, as I get the following error:
ERROR: Modpath run not succeeded
Unrecognized keyword in OPTIONS block of TDIS file. Stop.
Feature was implemented.
Adaptive time stepping has been included in the latest release of Modflow 6, which is great. I came to this issue because of a Google search, as I tried to use Modpath on a Modflow 6 model with adaptive time stepping. So I think I found a partial answer to the last question @damianmerrick posed:
- Will output from ATS models cause problems for downstream processing programs such as MODPATH, MT3D-USGS, ZoneBudget?
I think it is not possible to use Modpath on a Modflow 6 model with adaptive time stepping, as I get the following error:
ERROR: Modpath run not succeeded Unrecognized keyword in OPTIONS block of TDIS file. Stop.
FYI to anyone who searches for this error online and this issue is the only hit - it is likely that you set start_date_time to an actual date time in your TDIS. Set to None, if you want to use particle tracking. This is at least happening with my current combination of MODFLOW 6, MODPATH 7, and FloPy. Could be updating FloPy would fix this error.
Adaptive time stepping (ATS) is of huge practical benefit in some situations; particularly when performing highly-parameterised calibration and uncertainty quantification on large models, where it is infeasible to individually tweak each realisation of a model for solver convergence.
It would be great to see some form of this in MODFLOW-6 as an optional alternative to the usual pre-specified geometric series of time step lengths. USG-Transport has one possible implementation for reference - this has worked fairly well in my own experience - but alternative approaches could also be considered.
Here are a few points of discussion coming out of an initial email discussion with @langevin-usgs :
Where in the code does it belong? Output control (as used in USG-Transport) does not seem like the best place (but note the need for specification of reporting times). DM: TDIS seems like the obvious choice for the input data at least - or perhaps a separate file to minimise changes to the coding of external tools?
What sort of approach should it use? e.g. cut down or expand time step length based on number of iterations, look for changes in stress and adjust time step length in advance, etc.
Generalisation of the time stepping approach to support the multi-model architecture of MF6. Perhaps a time controller that asks each model, and the solver, for a "preferred" time step length.
How can problems with time slivers be mitigated? (very short time steps resulting from imprecise time difference calculations)
Will output from ATS models cause problems for downstream processing programs such as MODPATH, MT3D-USGS, ZoneBudget?