Source code for flopy.mf6.modflow.mfutllaktab

# 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 ModflowUtllaktab(MFPackage): """ ModflowUtllaktab defines a LAKTAB 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. nrow : integer integer value specifying the number of rows in the lake table. there must be nrow rows of data in the table block. ncol : integer integer value specifying the number of columns in the lake table. there must be ncol columns of data in the table block. for lakes with horizontal and/or vertical ctype connections, ncol must be equal to 3. for lakes with embeddedh or embeddedv ctype connections, ncol must be equal to 4. table : [(stage, volume, sarea, barea)] * stage : double precision real value that defines the stage corresponding to the remaining data on the line. * volume : double precision real value that defines the lake volume corresponding to the stage specified on the line. * sarea : double precision real value that defines the lake surface area corresponding to the stage specified on the line. * barea : double precision real value that defines the lake-GWF exchange area corresponding to the stage specified on the line. BAREA is only specified if the CLAKTYPE for the lake is EMBEDDEDH or EMBEDDEDV. 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`. """ table = ListTemplateGenerator(("laktab", "table", "table")) package_abbr = "utllaktab" _package_type = "laktab" dfn_file_name = "utl-laktab.dfn" dfn = [ ["header", "multi-package"], [ "block dimensions", "name nrow", "type integer", "reader urword", "optional false", ], [ "block dimensions", "name ncol", "type integer", "reader urword", "optional false", ], [ "block table", "name table", "type recarray stage volume sarea barea", "shape (nrow)", "reader urword", ], [ "block table", "name stage", "type double precision", "shape", "tagged false", "in_record true", "reader urword", ], [ "block table", "name volume", "type double precision", "shape", "tagged false", "in_record true", "reader urword", ], [ "block table", "name sarea", "type double precision", "shape", "tagged false", "in_record true", "reader urword", ], [ "block table", "name barea", "type double precision", "shape", "tagged false", "in_record true", "reader urword", "optional true", ], ] def __init__( self, model, loading_package=False, nrow=None, ncol=None, table=None, filename=None, pname=None, **kwargs, ): """Initialize ModflowUtllaktab.""" super().__init__( parent=model, package_type="laktab", filename=filename, pname=pname, loading_package=loading_package, **kwargs, ) self.nrow = self.build_mfdata("nrow", nrow) self.ncol = self.build_mfdata("ncol", ncol) self.table = self.build_mfdata("table", table) self._init_complete = True