transientflopy

Transient vs. Steady-State Simulation in MODFLOW 6 / Flopy


How can I define a MODFLOW6 model to be transient or in steady-state in Flopy. From what I find here here, transient calculations are mandated through the use of stress_period_data. Does that mean that as soon, as one package uses stress_period_data and the therefore MFTransientList objects, the entire model is evaluated in transient terms?


Solution

  • No. You need to define the flow regime using type of stress period in the STO (storage) package (0=steady, 1=transient). You define the stress periods in the TDIS package, and then its type in the STO package.

    The flopy notebooks may be the best way to clarify these concepts and they have been recently moved to the flopy documentation.

    Take a look at this one: https://flopy.readthedocs.io/en/latest/Notebooks/mf6_complex_model_example.html

    In cell [7] you will find the definition of the STO package.

    sto = flopy.mf6.ModflowGwfsto(
        gwf,
        pname="sto",
        save_flows=True,
        iconvert=1,
        ss=ss,
        sy=sy,
        steady_state={0: True},
        transient={1: True},
    )
    

    Also, the package documentation is always very helpful in these contexts. https://flopy.readthedocs.io/en/latest/_modules/flopy/mf6/modflow/mfgwfsto.html

    Note that in MODFLOW6 you define the transient characteristic for the first stress-period of this type, and this applies the subsequent stress periods until you define something different (i.e., another steady state sp).