flopy/flopy/mf6/modflow/mfgwflak.py

1269 lines
49 KiB
Python

# DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY
# mf6/utils/createpackages.py
from .. import mfpackage
from ..data.mfdatautil import ListTemplateGenerator
class ModflowGwflak(mfpackage.MFPackage):
"""
ModflowGwflak defines a lak package within a gwf6 model.
Parameters
----------
model : MFModel
Model that this package is a part of. Package is automatically
added to model when it is initialized.
loading_package : bool
Do not set this parameter. It is intended for debugging and internal
processing purposes only.
auxiliary : [string]
* auxiliary (string) defines an array of one or more auxiliary variable
names. There is no limit on the number of auxiliary variables that
can be provided on this line; however, lists of information provided
in subsequent blocks must have a column of data for each auxiliary
variable name defined here. The number of auxiliary variables
detected on this line determines the value for naux. Comments cannot
be provided anywhere on this line as they will be interpreted as
auxiliary variable names. Auxiliary variables may not be used by the
package, but they will be available for use by other parts of the
program. The program will terminate with an error if auxiliary
variables are specified on more than one line in the options block.
boundnames : boolean
* boundnames (boolean) keyword to indicate that boundary names may be
provided with the list of lake cells.
print_input : boolean
* print_input (boolean) keyword to indicate that the list of lake
information will be written to the listing file immediately after it
is read.
print_stage : boolean
* print_stage (boolean) keyword to indicate that the list of lake
stages will be printed to the listing file for every stress period in
which "HEAD PRINT" is specified in Output Control. If there is no
Output Control option and PRINT_STAGE is specified, then stages are
printed for the last time step of each stress period.
print_flows : boolean
* print_flows (boolean) keyword to indicate that the list of lake flow
rates will be printed to the listing file for every stress period
time step in which "BUDGET PRINT" is specified in Output Control. If
there is no Output Control option and "PRINT_FLOWS" is specified,
then flow rates are printed for the last time step of each stress
period.
save_flows : boolean
* save_flows (boolean) keyword to indicate that lake flow terms will be
written to the file specified with "BUDGET FILEOUT" in Output
Control.
stage_filerecord : [stagefile]
* stagefile (string) name of the binary output file to write stage
information.
budget_filerecord : [budgetfile]
* budgetfile (string) name of the binary output file to write budget
information.
package_convergence_filerecord : [package_convergence_filename]
* package_convergence_filename (string) name of the comma spaced values
output file to write package convergence information.
timeseries : {varname:data} or timeseries data
* Contains data for the ts package. Data can be stored in a dictionary
containing data for the ts package with variable names as keys and
package data as values. Data just for the timeseries variable is also
acceptable. See ts package documentation for more information.
observations : {varname:data} or continuous data
* Contains data for the obs package. Data can be stored in a dictionary
containing data for the obs package with variable names as keys and
package data as values. Data just for the observations variable is
also acceptable. See obs package documentation for more information.
mover : boolean
* mover (boolean) keyword to indicate that this instance of the LAK
Package can be used with the Water Mover (MVR) Package. When the
MOVER option is specified, additional memory is allocated within the
package to store the available, provided, and received water.
surfdep : double
* surfdep (double) real value that defines the surface depression depth
for VERTICAL lake-GWF connections. If specified, SURFDEP must be
greater than or equal to zero. If SURFDEP is not specified, a default
value of zero is used for all vertical lake-GWF connections.
time_conversion : double
* time_conversion (double) value that is used in converting outlet flow
terms that use Manning's equation or gravitational acceleration to
consistent time units. TIME_CONVERSION should be set to 1.0, 60.0,
3,600.0, 86,400.0, and 31,557,600.0 when using time units
(TIME_UNITS) of seconds, minutes, hours, days, or years in the
simulation, respectively. CONVTIME does not need to be specified if
no lake outlets are specified or TIME_UNITS are seconds.
length_conversion : double
* length_conversion (double) real value that is used in converting
outlet flow terms that use Manning's equation or gravitational
acceleration to consistent length units. LENGTH_CONVERSION should be
set to 3.28081, 1.0, and 100.0 when using length units (LENGTH_UNITS)
of feet, meters, or centimeters in the simulation, respectively.
LENGTH_CONVERSION does not need to be specified if no lake outlets
are specified or LENGTH_UNITS are meters.
nlakes : integer
* nlakes (integer) value specifying the number of lakes that will be
simulated for all stress periods.
noutlets : integer
* noutlets (integer) value specifying the number of outlets that will
be simulated for all stress periods. If NOUTLETS is not specified, a
default value of zero is used.
ntables : integer
* ntables (integer) value specifying the number of lakes tables that
will be used to define the lake stage, volume relation, and surface
area. If NTABLES is not specified, a default value of zero is used.
packagedata : [lakeno, strt, nlakeconn, aux, boundname]
* lakeno (integer) integer value that defines the lake number
associated with the specified PACKAGEDATA data on the line. LAKENO
must be greater than zero and less than or equal to NLAKES. Lake
information must be specified for every lake or the program will
terminate with an error. The program will also terminate with an
error if information for a lake is specified more than once. This
argument is an index variable, which means that it should be treated
as zero-based when working with FloPy and Python. Flopy will
automatically subtract one when loading index variables and add one
when writing index variables.
* strt (double) real value that defines the starting stage for the
lake.
* nlakeconn (integer) integer value that defines the number of GWF
cells connected to this (LAKENO) lake. There can only be one vertical
lake connection to each GWF cell. NLAKECONN must be greater than
zero.
* aux (double) represents the values of the auxiliary variables for
each lake. The values of auxiliary variables must be present for each
lake. The values must be specified in the order of the auxiliary
variables specified in the OPTIONS block. If the package supports
time series and the Options block includes a TIMESERIESFILE entry
(see the "Time-Variable Input" section), values can be obtained from
a time series by entering the time-series name in place of a numeric
value.
* boundname (string) name of the lake cell. BOUNDNAME is an ASCII
character variable that can contain as many as 40 characters. If
BOUNDNAME contains spaces in it, then the entire name must be
enclosed within single quotes.
connectiondata : [lakeno, iconn, cellid, claktype, bedleak, belev, telev,
connlen, connwidth]
* lakeno (integer) integer value that defines the lake number
associated with the specified CONNECTIONDATA data on the line. LAKENO
must be greater than zero and less than or equal to NLAKES. Lake
connection information must be specified for every lake connection to
the GWF model (NLAKECONN) or the program will terminate with an
error. The program will also terminate with an error if connection
information for a lake connection to the GWF model is specified more
than once. This argument is an index variable, which means that it
should be treated as zero-based when working with FloPy and Python.
Flopy will automatically subtract one when loading index variables
and add one when writing index variables.
* iconn (integer) integer value that defines the GWF connection number
for this lake connection entry. ICONN must be greater than zero and
less than or equal to NLAKECONN for lake LAKENO. This argument is an
index variable, which means that it should be treated as zero-based
when working with FloPy and Python. Flopy will automatically subtract
one when loading index variables and add one when writing index
variables.
* cellid ((integer, ...)) is the cell identifier, and depends on the
type of grid that is used for the simulation. For a structured grid
that uses the DIS input file, CELLID is the layer, row, and column.
For a grid that uses the DISV input file, CELLID is the layer and
CELL2D number. If the model uses the unstructured discretization
(DISU) input file, CELLID is the node number for the cell. This
argument is an index variable, which means that it should be treated
as zero-based when working with FloPy and Python. Flopy will
automatically subtract one when loading index variables and add one
when writing index variables.
* claktype (string) character string that defines the lake-GWF
connection type for the lake connection. Possible lake-GWF connection
type strings include: VERTICAL--character keyword to indicate the
lake-GWF connection is vertical and connection conductance
calculations use the hydraulic conductivity corresponding to the
:math:`K_{33}` tensor component defined for CELLID in the NPF
package. HORIZONTAL--character keyword to indicate the lake-GWF
connection is horizontal and connection conductance calculations use
the hydraulic conductivity corresponding to the :math:`K_{11}` tensor
component defined for CELLID in the NPF package. EMBEDDEDH--character
keyword to indicate the lake-GWF connection is embedded in a single
cell and connection conductance calculations use the hydraulic
conductivity corresponding to the :math:`K_{11}` tensor component
defined for CELLID in the NPF package. EMBEDDEDV--character keyword
to indicate the lake-GWF connection is embedded in a single cell and
connection conductance calculations use the hydraulic conductivity
corresponding to the :math:`K_{33}` tensor component defined for
CELLID in the NPF package. Embedded lakes can only be connected to a
single cell (NLAKECONN = 1) and there must be a lake table associated
with each embedded lake.
* bedleak (double) character string or real value that defines the bed
leakance for the lake-GWF connection. BEDLEAK must be greater than or
equal to zero or specified to be NONE. If BEDLEAK is specified to be
NONE, the lake-GWF connection conductance is solely a function of
aquifer properties in the connected GWF cell and lakebed sediments
are assumed to be absent.
* belev (double) real value that defines the bottom elevation for a
HORIZONTAL lake-GWF connection. Any value can be specified if
CLAKTYPE is VERTICAL, EMBEDDEDH, or EMBEDDEDV. If CLAKTYPE is
HORIZONTAL and BELEV is not equal to TELEV, BELEV must be greater
than or equal to the bottom of the GWF cell CELLID. If BELEV is equal
to TELEV, BELEV is reset to the bottom of the GWF cell CELLID.
* telev (double) real value that defines the top elevation for a
HORIZONTAL lake-GWF connection. Any value can be specified if
CLAKTYPE is VERTICAL, EMBEDDEDH, or EMBEDDEDV. If CLAKTYPE is
HORIZONTAL and TELEV is not equal to BELEV, TELEV must be less than
or equal to the top of the GWF cell CELLID. If TELEV is equal to
BELEV, TELEV is reset to the top of the GWF cell CELLID.
* connlen (double) real value that defines the distance between the
connected GWF CELLID node and the lake for a HORIZONTAL, EMBEDDEDH,
or EMBEDDEDV lake-GWF connection. CONLENN must be greater than zero
for a HORIZONTAL, EMBEDDEDH, or EMBEDDEDV lake-GWF connection. Any
value can be specified if CLAKTYPE is VERTICAL.
* connwidth (double) real value that defines the connection face width
for a HORIZONTAL lake-GWF connection. CONNWIDTH must be greater than
zero for a HORIZONTAL lake-GWF connection. Any value can be specified
if CLAKTYPE is VERTICAL, EMBEDDEDH, or EMBEDDEDV.
tables : [lakeno, tab6_filename]
* lakeno (integer) integer value that defines the lake number
associated with the specified TABLES data on the line. LAKENO must be
greater than zero and less than or equal to NLAKES. The program will
terminate with an error if table information for a lake is specified
more than once or the number of specified tables is less than
NTABLES. This argument is an index variable, which means that it
should be treated as zero-based when working with FloPy and Python.
Flopy will automatically subtract one when loading index variables
and add one when writing index variables.
* tab6_filename (string) character string that defines the path and
filename for the file containing lake table data for the lake
connection. The TAB6_FILENAME file includes the number of entries in
the file and the relation between stage, volume, and surface area for
each entry in the file. Lake table files for EMBEDDEDH and EMBEDDEDV
lake-GWF connections also include lake-GWF exchange area data for
each entry in the file. Instructions for creating the TAB6_FILENAME
input file are provided in Lake Table Input File section.
outlets : [outletno, lakein, lakeout, couttype, invert, width, rough,
slope]
* outletno (integer) integer value that defines the outlet number
associated with the specified OUTLETS data on the line. OUTLETNO must
be greater than zero and less than or equal to NOUTLETS. Outlet
information must be specified for every outlet or the program will
terminate with an error. The program will also terminate with an
error if information for a outlet is specified more than once. This
argument is an index variable, which means that it should be treated
as zero-based when working with FloPy and Python. Flopy will
automatically subtract one when loading index variables and add one
when writing index variables.
* lakein (integer) integer value that defines the lake number that
outlet is connected to. LAKEIN must be greater than zero and less
than or equal to NLAKES. This argument is an index variable, which
means that it should be treated as zero-based when working with FloPy
and Python. Flopy will automatically subtract one when loading index
variables and add one when writing index variables.
* lakeout (integer) integer value that defines the lake number that
outlet discharge from lake outlet OUTLETNO is routed to. LAKEOUT must
be greater than or equal to zero and less than or equal to NLAKES. If
LAKEOUT is zero, outlet discharge from lake outlet OUTLETNO is
discharged to an external boundary. This argument is an index
variable, which means that it should be treated as zero-based when
working with FloPy and Python. Flopy will automatically subtract one
when loading index variables and add one when writing index
variables.
* couttype (string) character string that defines the outlet type for
the outlet OUTLETNO. Possible COUTTYPE strings include: SPECIFIED--
character keyword to indicate the outlet is defined as a specified
flow. MANNING--character keyword to indicate the outlet is defined
using Manning's equation. WEIR--character keyword to indicate the
outlet is defined using a sharp weir equation.
* invert (double) real value that defines the invert elevation for the
lake outlet. Any value can be specified if COUTTYPE is SPECIFIED. If
the Options block includes a TIMESERIESFILE entry (see the "Time-
Variable Input" section), values can be obtained from a time series
by entering the time-series name in place of a numeric value.
* width (double) real value that defines the width of the lake outlet.
Any value can be specified if COUTTYPE is SPECIFIED. If the Options
block includes a TIMESERIESFILE entry (see the "Time-Variable Input"
section), values can be obtained from a time series by entering the
time-series name in place of a numeric value.
* rough (double) real value that defines the roughness coefficient for
the lake outlet. Any value can be specified if COUTTYPE is not
MANNING. If the Options block includes a TIMESERIESFILE entry (see
the "Time-Variable Input" section), values can be obtained from a
time series by entering the time-series name in place of a numeric
value.
* slope (double) real value that defines the bed slope for the lake
outlet. Any value can be specified if COUTTYPE is not MANNING. If the
Options block includes a TIMESERIESFILE entry (see the "Time-Variable
Input" section), values can be obtained from a time series by
entering the time-series name in place of a numeric value.
perioddata : [number, laksetting]
* number (integer) integer value that defines the lake or outlet number
associated with the specified PERIOD data on the line. NUMBER must be
greater than zero and less than or equal to NLAKES for a lake number
and less than or equal to NOUTLETS for an outlet number. This
argument is an index variable, which means that it should be treated
as zero-based when working with FloPy and Python. Flopy will
automatically subtract one when loading index variables and add one
when writing index variables.
* laksetting (keystring) line of information that is parsed into a
keyword and values. Keyword values that can be used to start the
LAKSETTING string include both keywords for lake settings and
keywords for outlet settings. Keywords for lake settings include:
STATUS, STAGE, RAINFALL, EVAPORATION, RUNOFF, INFLOW, WITHDRAWAL, and
AUXILIARY. Keywords for outlet settings include RATE, INVERT, WIDTH,
SLOPE, and ROUGH.
status : [string]
* status (string) keyword option to define lake status. STATUS
can be ACTIVE, INACTIVE, or CONSTANT. By default, STATUS is
ACTIVE.
stage : [string]
* stage (string) real or character value that defines the stage
for the lake. The specified STAGE is only applied if the lake
is a constant stage lake. If the Options block includes a
TIMESERIESFILE entry (see the "Time-Variable Input" section),
values can be obtained from a time series by entering the
time-series name in place of a numeric value.
rainfall : [string]
* rainfall (string) real or character value that defines the
rainfall rate :math:`(LT^{-1})` for the lake. Value must be
greater than or equal to zero. If the Options block includes
a TIMESERIESFILE entry (see the "Time-Variable Input"
section), values can be obtained from a time series by
entering the time-series name in place of a numeric value.
evaporation : [string]
* evaporation (string) real or character value that defines the
maximum evaporation rate :math:`(LT^{-1})` for the lake.
Value must be greater than or equal to zero. If the Options
block includes a TIMESERIESFILE entry (see the "Time-Variable
Input" section), values can be obtained from a time series by
entering the time-series name in place of a numeric value.
runoff : [string]
* runoff (string) real or character value that defines the
runoff rate :math:`(L^3 T^{-1})` for the lake. Value must be
greater than or equal to zero. If the Options block includes
a TIMESERIESFILE entry (see the "Time-Variable Input"
section), values can be obtained from a time series by
entering the time-series name in place of a numeric value.
inflow : [string]
* inflow (string) real or character value that defines the
volumetric inflow rate :math:`(L^3 T^{-1})` for the lake.
Value must be greater than or equal to zero. If the Options
block includes a TIMESERIESFILE entry (see the "Time-Variable
Input" section), values can be obtained from a time series by
entering the time-series name in place of a numeric value. By
default, inflow rates are zero for each lake.
withdrawal : [string]
* withdrawal (string) real or character value that defines the
maximum withdrawal rate :math:`(L^3 T^{-1})` for the lake.
Value must be greater than or equal to zero. If the Options
block includes a TIMESERIESFILE entry (see the "Time-Variable
Input" section), values can be obtained from a time series by
entering the time-series name in place of a numeric value.
rate : [string]
* rate (string) real or character value that defines the
extraction rate for the lake outflow. A positive value
indicates inflow and a negative value indicates outflow from
the lake. RATE only applies to active (IBOUND > 0) lakes. A
specified RATE is only applied if COUTTYPE for the OUTLETNO
is SPECIFIED. If the Options block includes a TIMESERIESFILE
entry (see the "Time-Variable Input" section), values can be
obtained from a time series by entering the time-series name
in place of a numeric value. By default, the RATE for each
SPECIFIED lake outlet is zero.
invert : [string]
* invert (string) real or character value that defines the
invert elevation for the lake outlet. A specified INVERT
value is only used for active lakes if COUTTYPE for lake
outlet OUTLETNO is not SPECIFIED. If the Options block
includes a TIMESERIESFILE entry (see the "Time-Variable
Input" section), values can be obtained from a time series by
entering the time-series name in place of a numeric value.
width : [string]
* width (string) real or character value that defines the width
of the lake outlet. A specified WIDTH value is only used for
active lakes if COUTTYPE for lake outlet OUTLETNO is not
SPECIFIED. If the Options block includes a TIMESERIESFILE
entry (see the "Time-Variable Input" section), values can be
obtained from a time series by entering the time-series name
in place of a numeric value.
slope : [string]
* slope (string) real or character value that defines the bed
slope for the lake outlet. A specified SLOPE value is only
used for active lakes if COUTTYPE for lake outlet OUTLETNO is
MANNING. If the Options block includes a TIMESERIESFILE entry
(see the "Time-Variable Input" section), values can be
obtained from a time series by entering the time-series name
in place of a numeric value.
rough : [string]
* rough (string) real value that defines the roughness
coefficient for the lake outlet. Any value can be specified
if COUTTYPE is not MANNING. If the Options block includes a
TIMESERIESFILE entry (see the "Time-Variable Input" section),
values can be obtained from a time series by entering the
time-series name in place of a numeric value.
auxiliaryrecord : [auxname, auxval]
* auxname (string) name for the auxiliary variable to be
assigned AUXVAL. AUXNAME must match one of the auxiliary
variable names defined in the OPTIONS block. If AUXNAME does
not match one of the auxiliary variable names defined in the
OPTIONS block the data are ignored.
* auxval (double) value for the auxiliary variable. If the
Options block includes a TIMESERIESFILE entry (see the "Time-
Variable Input" section), values can be obtained from a time
series by entering the time-series name in place of a numeric
value.
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.
"""
auxiliary = ListTemplateGenerator(("gwf6", "lak", "options", "auxiliary"))
stage_filerecord = ListTemplateGenerator(
("gwf6", "lak", "options", "stage_filerecord")
)
budget_filerecord = ListTemplateGenerator(
("gwf6", "lak", "options", "budget_filerecord")
)
package_convergence_filerecord = ListTemplateGenerator(
("gwf6", "lak", "options", "package_convergence_filerecord")
)
ts_filerecord = ListTemplateGenerator(
("gwf6", "lak", "options", "ts_filerecord")
)
obs_filerecord = ListTemplateGenerator(
("gwf6", "lak", "options", "obs_filerecord")
)
packagedata = ListTemplateGenerator(
("gwf6", "lak", "packagedata", "packagedata")
)
connectiondata = ListTemplateGenerator(
("gwf6", "lak", "connectiondata", "connectiondata")
)
tables = ListTemplateGenerator(("gwf6", "lak", "tables", "tables"))
outlets = ListTemplateGenerator(("gwf6", "lak", "outlets", "outlets"))
perioddata = ListTemplateGenerator(("gwf6", "lak", "period", "perioddata"))
package_abbr = "gwflak"
_package_type = "lak"
dfn_file_name = "gwf-lak.dfn"
dfn = [
[
"block options",
"name auxiliary",
"type string",
"shape (naux)",
"reader urword",
"optional true",
],
[
"block options",
"name boundnames",
"type keyword",
"shape",
"reader urword",
"optional true",
],
[
"block options",
"name print_input",
"type keyword",
"reader urword",
"optional true",
],
[
"block options",
"name print_stage",
"type keyword",
"reader urword",
"optional true",
],
[
"block options",
"name print_flows",
"type keyword",
"reader urword",
"optional true",
],
[
"block options",
"name save_flows",
"type keyword",
"reader urword",
"optional true",
],
[
"block options",
"name stage_filerecord",
"type record stage fileout stagefile",
"shape",
"reader urword",
"tagged true",
"optional true",
],
[
"block options",
"name stage",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name stagefile",
"type string",
"preserve_case true",
"shape",
"in_record true",
"reader urword",
"tagged false",
"optional false",
],
[
"block options",
"name budget_filerecord",
"type record budget fileout budgetfile",
"shape",
"reader urword",
"tagged true",
"optional true",
],
[
"block options",
"name budget",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name fileout",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name budgetfile",
"type string",
"preserve_case true",
"shape",
"in_record true",
"reader urword",
"tagged false",
"optional false",
],
[
"block options",
"name package_convergence_filerecord",
"type record package_convergence fileout "
"package_convergence_filename",
"shape",
"reader urword",
"tagged true",
"optional true",
],
[
"block options",
"name package_convergence",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name package_convergence_filename",
"type string",
"shape",
"in_record true",
"reader urword",
"tagged false",
"optional false",
],
[
"block options",
"name ts_filerecord",
"type record ts6 filein ts6_filename",
"shape",
"reader urword",
"tagged true",
"optional true",
"construct_package ts",
"construct_data timeseries",
"parameter_name timeseries",
],
[
"block options",
"name ts6",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name filein",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name ts6_filename",
"type string",
"preserve_case true",
"in_record true",
"reader urword",
"optional false",
"tagged false",
],
[
"block options",
"name obs_filerecord",
"type record obs6 filein obs6_filename",
"shape",
"reader urword",
"tagged true",
"optional true",
"construct_package obs",
"construct_data continuous",
"parameter_name observations",
],
[
"block options",
"name obs6",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block options",
"name obs6_filename",
"type string",
"preserve_case true",
"in_record true",
"tagged false",
"reader urword",
"optional false",
],
[
"block options",
"name mover",
"type keyword",
"tagged true",
"reader urword",
"optional true",
],
[
"block options",
"name surfdep",
"type double precision",
"reader urword",
"optional true",
],
[
"block options",
"name time_conversion",
"type double precision",
"reader urword",
"optional true",
],
[
"block options",
"name length_conversion",
"type double precision",
"reader urword",
"optional true",
],
[
"block dimensions",
"name nlakes",
"type integer",
"reader urword",
"optional false",
],
[
"block dimensions",
"name noutlets",
"type integer",
"reader urword",
"optional false",
],
[
"block dimensions",
"name ntables",
"type integer",
"reader urword",
"optional false",
],
[
"block packagedata",
"name packagedata",
"type recarray lakeno strt nlakeconn aux boundname",
"shape (maxbound)",
"reader urword",
],
[
"block packagedata",
"name lakeno",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block packagedata",
"name strt",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block packagedata",
"name nlakeconn",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block packagedata",
"name aux",
"type double precision",
"in_record true",
"tagged false",
"shape (naux)",
"reader urword",
"time_series true",
"optional true",
],
[
"block packagedata",
"name boundname",
"type string",
"shape",
"tagged false",
"in_record true",
"reader urword",
"optional true",
],
[
"block connectiondata",
"name connectiondata",
"type recarray lakeno iconn cellid claktype bedleak belev telev "
"connlen connwidth",
"shape (sum(nlakeconn))",
"reader urword",
],
[
"block connectiondata",
"name lakeno",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block connectiondata",
"name iconn",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block connectiondata",
"name cellid",
"type integer",
"shape (ncelldim)",
"tagged false",
"in_record true",
"reader urword",
],
[
"block connectiondata",
"name claktype",
"type string",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block connectiondata",
"name bedleak",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block connectiondata",
"name belev",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block connectiondata",
"name telev",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block connectiondata",
"name connlen",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block connectiondata",
"name connwidth",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block tables",
"name tables",
"type recarray lakeno tab6 filein tab6_filename",
"shape (ntables)",
"reader urword",
],
[
"block tables",
"name lakeno",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block tables",
"name tab6",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block tables",
"name filein",
"type keyword",
"shape",
"in_record true",
"reader urword",
"tagged true",
"optional false",
],
[
"block tables",
"name tab6_filename",
"type string",
"preserve_case true",
"in_record true",
"reader urword",
"optional false",
"tagged false",
],
[
"block outlets",
"name outlets",
"type recarray outletno lakein lakeout couttype invert width "
"rough slope",
"shape (noutlets)",
"reader urword",
],
[
"block outlets",
"name outletno",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block outlets",
"name lakein",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block outlets",
"name lakeout",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block outlets",
"name couttype",
"type string",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block outlets",
"name invert",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
"time_series true",
],
[
"block outlets",
"name width",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
"time_series true",
],
[
"block outlets",
"name rough",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
"time_series true",
],
[
"block outlets",
"name slope",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name iper",
"type integer",
"block_variable True",
"in_record true",
"tagged false",
"shape",
"valid",
"reader urword",
"optional false",
],
[
"block period",
"name perioddata",
"type recarray number laksetting",
"shape",
"reader urword",
],
[
"block period",
"name number",
"type integer",
"shape",
"tagged false",
"in_record true",
"reader urword",
"numeric_index true",
],
[
"block period",
"name laksetting",
"type keystring status stage rainfall evaporation runoff inflow "
"withdrawal rate invert width slope rough auxiliaryrecord",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block period",
"name status",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
],
[
"block period",
"name stage",
"type string",
"shape",
"tagged true",
"in_record true",
"time_series true",
"reader urword",
],
[
"block period",
"name rainfall",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name evaporation",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name runoff",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name inflow",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name withdrawal",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name rate",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name invert",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name rough",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name width",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name slope",
"type string",
"shape",
"tagged true",
"in_record true",
"reader urword",
"time_series true",
],
[
"block period",
"name auxiliaryrecord",
"type record auxiliary auxname auxval",
"shape",
"tagged",
"in_record true",
"reader urword",
],
[
"block period",
"name auxiliary",
"type keyword",
"shape",
"in_record true",
"reader urword",
],
[
"block period",
"name auxname",
"type string",
"shape",
"tagged false",
"in_record true",
"reader urword",
],
[
"block period",
"name auxval",
"type double precision",
"shape",
"tagged false",
"in_record true",
"reader urword",
"time_series true",
],
]
def __init__(
self,
model,
loading_package=False,
auxiliary=None,
boundnames=None,
print_input=None,
print_stage=None,
print_flows=None,
save_flows=None,
stage_filerecord=None,
budget_filerecord=None,
package_convergence_filerecord=None,
timeseries=None,
observations=None,
mover=None,
surfdep=None,
time_conversion=None,
length_conversion=None,
nlakes=None,
noutlets=None,
ntables=None,
packagedata=None,
connectiondata=None,
tables=None,
outlets=None,
perioddata=None,
filename=None,
pname=None,
parent_file=None,
):
super(ModflowGwflak, self).__init__(
model, "lak", filename, pname, loading_package, parent_file
)
# set up variables
self.auxiliary = self.build_mfdata("auxiliary", auxiliary)
self.boundnames = self.build_mfdata("boundnames", boundnames)
self.print_input = self.build_mfdata("print_input", print_input)
self.print_stage = self.build_mfdata("print_stage", print_stage)
self.print_flows = self.build_mfdata("print_flows", print_flows)
self.save_flows = self.build_mfdata("save_flows", save_flows)
self.stage_filerecord = self.build_mfdata(
"stage_filerecord", stage_filerecord
)
self.budget_filerecord = self.build_mfdata(
"budget_filerecord", budget_filerecord
)
self.package_convergence_filerecord = self.build_mfdata(
"package_convergence_filerecord", package_convergence_filerecord
)
self._ts_filerecord = self.build_mfdata("ts_filerecord", None)
self._ts_package = self.build_child_package(
"ts", timeseries, "timeseries", self._ts_filerecord
)
self._obs_filerecord = self.build_mfdata("obs_filerecord", None)
self._obs_package = self.build_child_package(
"obs", observations, "continuous", self._obs_filerecord
)
self.mover = self.build_mfdata("mover", mover)
self.surfdep = self.build_mfdata("surfdep", surfdep)
self.time_conversion = self.build_mfdata(
"time_conversion", time_conversion
)
self.length_conversion = self.build_mfdata(
"length_conversion", length_conversion
)
self.nlakes = self.build_mfdata("nlakes", nlakes)
self.noutlets = self.build_mfdata("noutlets", noutlets)
self.ntables = self.build_mfdata("ntables", ntables)
self.packagedata = self.build_mfdata("packagedata", packagedata)
self.connectiondata = self.build_mfdata(
"connectiondata", connectiondata
)
self.tables = self.build_mfdata("tables", tables)
self.outlets = self.build_mfdata("outlets", outlets)
self.perioddata = self.build_mfdata("perioddata", perioddata)
self._init_complete = True