Source code for flopy.mf6.modflow.mfgwtadv

# autogenerated file, do not modify

from os import PathLike, curdir
from typing import Union

from flopy.mf6.data.mfdatautil import ArrayTemplateGenerator, ListTemplateGenerator
from flopy.mf6.mfpackage import MFChildPackages, MFPackage


[docs]class ModflowGwtadv(MFPackage): """ ModflowGwtadv defines a ADV package. Parameters ---------- model Model that this package is a part of. Package is automatically added to model when it is initialized. loading_package : bool, default False Do not set this parameter. It is intended for debugging and internal processing purposes only. scheme : string scheme used to solve the advection term. can be upstream, central, or tvd. if not specified, upstream weighting is the default weighting scheme. ats_percel : double precision fractional cell distance submitted by the adv package to the adaptive time stepping (ats) package. if ats_percel is specified and the ats package is active, a time step calculation will be made for each cell based on flow through the cell and cell properties. the largest time step will be calculated such that the advective fractional cell distance (ats_percel) is not exceeded for any active cell in the grid. this time-step constraint will be submitted to the ats package, perhaps with constraints submitted by other packages, in the calculation of the time step. ats_percel must be greater than zero. if a value of zero is specified for ats_percel the program will automatically reset it to an internal no data value to indicate that time steps should not be subject to this constraint. filename : str or PathLike, optional Name or path of file where this package is stored. pname : str, optional Package name. **kwargs Extra keywords for :class:`flopy.mf6.mfpackage.MFPackage`. """ package_abbr = "gwtadv" _package_type = "adv" dfn_file_name = "gwt-adv.dfn" dfn = [ ["header"], [ "block options", "name scheme", "type string", "valid central upstream tvd", "reader urword", "optional true", ], [ "block options", "name ats_percel", "type double precision", "reader urword", "optional true", ], ] def __init__( self, model, loading_package=False, scheme=None, ats_percel=None, filename=None, pname=None, **kwargs, ): """Initialize ModflowGwtadv.""" super().__init__( parent=model, package_type="adv", filename=filename, pname=pname, loading_package=loading_package, **kwargs, ) self.scheme = self.build_mfdata("scheme", scheme) self.ats_percel = self.build_mfdata("ats_percel", ats_percel) self._init_complete = True