Source code for flopy.mf6.modflow.mfutlts

# DO NOT MODIFY THIS FILE DIRECTLY.  THIS FILE MUST BE CREATED BY
# mf6/utils/createpackages.py
# FILE created on February 07, 2024 20:16:08 UTC
from .. import mfpackage
from ..data.mfdatautil import ListTemplateGenerator


[docs]class ModflowUtlts(mfpackage.MFPackage): """ ModflowUtlts defines a ts package within a utl model. Parameters ---------- parent_package : MFPackage Parent_package that this package is a part of. Package is automatically added to parent_package when it is initialized. loading_package : bool Do not set this parameter. It is intended for debugging and internal processing purposes only. time_series_namerecord : [time_series_names] * time_series_names (string) Name by which a package references a particular time-array series. The name must be unique among all time- array series used in a package. interpolation_methodrecord : [interpolation_method] * interpolation_method (string) Interpolation method, which is either STEPWISE or LINEAR. interpolation_methodrecord_single : [interpolation_method_single] * interpolation_method_single (string) Interpolation method, which is either STEPWISE or LINEAR. sfacrecord : [sfacval] * sfacval (double) Scale factor, which will multiply all array values in time series. SFAC is an optional attribute; if omitted, SFAC = 1.0. sfacrecord_single : [sfacval] * sfacval (double) Scale factor, which will multiply all array values in time series. SFAC is an optional attribute; if omitted, SFAC = 1.0. timeseries : [ts_time, ts_array] * ts_time (double) A numeric time relative to the start of the simulation, in the time unit used in the simulation. Times must be strictly increasing. * ts_array (double) A 2-D array of numeric, floating-point values, or a constant value, readable by the U2DREL array-reading utility. filename : String File name for this package. pname : String Package name for this package. parent_file : MFPackage Parent package file that references this package. Only needed for utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ time_series_namerecord = ListTemplateGenerator( ("ts", "attributes", "time_series_namerecord") ) interpolation_methodrecord = ListTemplateGenerator( ("ts", "attributes", "interpolation_methodrecord") ) interpolation_methodrecord_single = ListTemplateGenerator( ("ts", "attributes", "interpolation_methodrecord_single") ) sfacrecord = ListTemplateGenerator(("ts", "attributes", "sfacrecord")) sfacrecord_single = ListTemplateGenerator( ("ts", "attributes", "sfacrecord_single") ) timeseries = ListTemplateGenerator(("ts", "timeseries", "timeseries")) package_abbr = "utlts" _package_type = "ts" dfn_file_name = "utl-ts.dfn" dfn = [ [ "header", "multi-package", ], [ "block attributes", "name time_series_namerecord", "type record names time_series_names", "shape", "reader urword", "tagged false", "optional false", ], [ "block attributes", "name names", "other_names name", "type keyword", "shape", "reader urword", "optional false", ], [ "block attributes", "name time_series_names", "type string", "shape any1d", "tagged false", "reader urword", "optional false", ], [ "block attributes", "name interpolation_methodrecord", "type record methods interpolation_method", "shape", "reader urword", "tagged false", "optional true", ], [ "block attributes", "name methods", "type keyword", "shape", "reader urword", "optional false", ], [ "block attributes", "name interpolation_method", "type string", "valid stepwise linear linearend", "shape time_series_names", "tagged false", "reader urword", "optional false", ], [ "block attributes", "name interpolation_methodrecord_single", "type record method interpolation_method_single", "shape", "reader urword", "tagged false", "optional true", ], [ "block attributes", "name method", "type keyword", "shape", "reader urword", "optional false", ], [ "block attributes", "name interpolation_method_single", "type string", "valid stepwise linear linearend", "shape", "tagged false", "reader urword", "optional false", ], [ "block attributes", "name sfacrecord", "type record sfacs sfacval", "shape", "reader urword", "tagged true", "optional true", ], [ "block attributes", "name sfacs", "type keyword", "shape", "reader urword", "optional false", ], [ "block attributes", "name sfacval", "type double precision", "shape <time_series_name", "tagged false", "reader urword", "optional false", ], [ "block attributes", "name sfacrecord_single", "type record sfac sfacval", "shape", "reader urword", "tagged true", "optional true", ], [ "block attributes", "name sfac", "type keyword", "shape", "tagged false", "reader urword", "optional false", ], [ "block timeseries", "name timeseries", "type recarray ts_time ts_array", "shape", "reader urword", "tagged true", "optional false", ], [ "block timeseries", "name ts_time", "type double precision", "shape", "tagged false", "reader urword", "optional false", "repeating false", ], [ "block timeseries", "name ts_array", "type double precision", "shape time_series_names", "tagged false", "reader urword", "optional false", ], ] def __init__( self, parent_package, loading_package=False, time_series_namerecord=None, interpolation_methodrecord=None, interpolation_methodrecord_single=None, sfacrecord=None, sfacrecord_single=None, timeseries=None, filename=None, pname=None, **kwargs, ): super().__init__( parent_package, "ts", filename, pname, loading_package, **kwargs ) # set up variables self.time_series_namerecord = self.build_mfdata( "time_series_namerecord", time_series_namerecord ) self.interpolation_methodrecord = self.build_mfdata( "interpolation_methodrecord", interpolation_methodrecord ) self.interpolation_methodrecord_single = self.build_mfdata( "interpolation_methodrecord_single", interpolation_methodrecord_single, ) self.sfacrecord = self.build_mfdata("sfacrecord", sfacrecord) self.sfacrecord_single = self.build_mfdata( "sfacrecord_single", sfacrecord_single ) self.timeseries = self.build_mfdata("timeseries", timeseries) self._init_complete = True
[docs]class UtltsPackages(mfpackage.MFChildPackages): """ UtltsPackages is a container class for the ModflowUtlts class. Methods ---------- initialize Initializes a new ModflowUtlts package removing any sibling child packages attached to the same parent package. See ModflowUtlts init documentation for definition of parameters. append_package Adds a new ModflowUtlts package to the container. See ModflowUtlts init documentation for definition of parameters. """ package_abbr = "utltspackages"
[docs] def initialize( self, time_series_namerecord=None, interpolation_methodrecord=None, interpolation_methodrecord_single=None, sfacrecord=None, sfacrecord_single=None, timeseries=None, filename=None, pname=None, ): new_package = ModflowUtlts( self._cpparent, time_series_namerecord=time_series_namerecord, interpolation_methodrecord=interpolation_methodrecord, interpolation_methodrecord_single=interpolation_methodrecord_single, sfacrecord=sfacrecord, sfacrecord_single=sfacrecord_single, timeseries=timeseries, filename=filename, pname=pname, child_builder_call=True, ) self.init_package(new_package, filename)
[docs] def append_package( self, time_series_namerecord=None, interpolation_methodrecord=None, interpolation_methodrecord_single=None, sfacrecord=None, sfacrecord_single=None, timeseries=None, filename=None, pname=None, ): new_package = ModflowUtlts( self._cpparent, time_series_namerecord=time_series_namerecord, interpolation_methodrecord=interpolation_methodrecord, interpolation_methodrecord_single=interpolation_methodrecord_single, sfacrecord=sfacrecord, sfacrecord_single=sfacrecord_single, timeseries=timeseries, filename=filename, pname=pname, child_builder_call=True, ) self._append_package(new_package, filename)