From 1938dec79ceb126754ba08b3b66e1cda46df608d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 01:30:52 +0000 Subject: [PATCH 1/2] ci(release): set version to 3.9.2, update components from DFN files, update changelog --- .docs/md/version_changes.md | 27 + CITATION.cff | 4 +- README.md | 4 +- docs/PyPI_release.md | 2 +- flopy/mf6/data/dfn/gwe-adv.dfn | 8 + flopy/mf6/data/dfn/gwe-est.dfn | 28 +- flopy/mf6/data/dfn/gwe-fmi.dfn | 2 +- flopy/mf6/data/dfn/gwe-lke.dfn | 2 +- flopy/mf6/data/dfn/gwe-mwe.dfn | 4 +- flopy/mf6/data/dfn/gwe-sfe.dfn | 8 +- flopy/mf6/data/dfn/gwe-uze.dfn | 2 +- flopy/mf6/data/dfn/gwt-fmi.dfn | 2 +- flopy/mf6/data/dfn/gwt-ist.dfn | 2 +- flopy/mf6/data/dfn/prt-fmi.dfn | 2 +- flopy/mf6/data/dfn/prt-prp.dfn | 8 +- flopy/mf6/data/dfn/sim-nam.dfn | 9 + flopy/mf6/data/dfn/utl-ats.dfn | 2 +- flopy/mf6/data/dfn/utl-hpc.dfn | 2 +- flopy/mf6/data/dfn/utl-ncf.dfn | 2 +- flopy/mf6/modflow/mfems.py | 22 +- flopy/mf6/modflow/mfgnc.py | 203 +++-- flopy/mf6/modflow/mfgwe.py | 76 +- flopy/mf6/modflow/mfgweadv.py | 55 +- flopy/mf6/modflow/mfgwecnd.py | 194 +++-- flopy/mf6/modflow/mfgwectp.py | 321 +++++-- flopy/mf6/modflow/mfgwedis.py | 288 +++++-- flopy/mf6/modflow/mfgwedisu.py | 406 ++++++--- flopy/mf6/modflow/mfgwedisv.py | 381 ++++++--- flopy/mf6/modflow/mfgweesl.py | 311 +++++-- flopy/mf6/modflow/mfgweest.py | 231 +++-- flopy/mf6/modflow/mfgwefmi.py | 110 ++- flopy/mf6/modflow/mfgwegwe.py | 410 ++++++--- flopy/mf6/modflow/mfgweic.py | 74 +- flopy/mf6/modflow/mfgwelke.py | 683 +++++++++++---- flopy/mf6/modflow/mfgwemve.py | 234 ++++-- flopy/mf6/modflow/mfgwemwe.py | 654 +++++++++++---- flopy/mf6/modflow/mfgwenam.py | 290 +++++-- flopy/mf6/modflow/mfgweoc.py | 434 +++++++--- flopy/mf6/modflow/mfgwesfe.py | 724 +++++++++++----- flopy/mf6/modflow/mfgwessm.py | 162 +++- flopy/mf6/modflow/mfgweuze.py | 643 ++++++++++---- flopy/mf6/modflow/mfgwf.py | 77 +- flopy/mf6/modflow/mfgwfapi.py | 155 +++- flopy/mf6/modflow/mfgwfbuy.py | 208 +++-- flopy/mf6/modflow/mfgwfchd.py | 329 ++++++-- flopy/mf6/modflow/mfgwfcsub.py | 1073 +++++++++++++++++------- flopy/mf6/modflow/mfgwfdis.py | 288 +++++-- flopy/mf6/modflow/mfgwfdisu.py | 406 ++++++--- flopy/mf6/modflow/mfgwfdisv.py | 381 ++++++--- flopy/mf6/modflow/mfgwfdrn.py | 368 +++++--- flopy/mf6/modflow/mfgwfevt.py | 425 +++++++--- flopy/mf6/modflow/mfgwfevta.py | 341 +++++--- flopy/mf6/modflow/mfgwfghb.py | 340 ++++++-- flopy/mf6/modflow/mfgwfgnc.py | 204 +++-- flopy/mf6/modflow/mfgwfgwe.py | 31 +- flopy/mf6/modflow/mfgwfgwf.py | 475 ++++++++--- flopy/mf6/modflow/mfgwfgwt.py | 31 +- flopy/mf6/modflow/mfgwfhfb.py | 115 ++- flopy/mf6/modflow/mfgwfic.py | 74 +- flopy/mf6/modflow/mfgwflak.py | 1169 +++++++++++++++++++------- flopy/mf6/modflow/mfgwfmaw.py | 1017 ++++++++++++++++------ flopy/mf6/modflow/mfgwfmvr.py | 436 +++++++--- flopy/mf6/modflow/mfgwfnam.py | 320 +++++-- flopy/mf6/modflow/mfgwfnpf.py | 527 +++++++++--- flopy/mf6/modflow/mfgwfoc.py | 432 +++++++--- flopy/mf6/modflow/mfgwfprt.py | 31 +- flopy/mf6/modflow/mfgwfrch.py | 329 ++++++-- flopy/mf6/modflow/mfgwfrcha.py | 315 +++++-- flopy/mf6/modflow/mfgwfriv.py | 353 +++++--- flopy/mf6/modflow/mfgwfsfr.py | 1296 +++++++++++++++++++++-------- flopy/mf6/modflow/mfgwfsto.py | 296 +++++-- flopy/mf6/modflow/mfgwfuzf.py | 824 +++++++++++++----- flopy/mf6/modflow/mfgwfvsc.py | 245 ++++-- flopy/mf6/modflow/mfgwfwel.py | 411 ++++++--- flopy/mf6/modflow/mfgwt.py | 76 +- flopy/mf6/modflow/mfgwtadv.py | 43 +- flopy/mf6/modflow/mfgwtapi.py | 155 +++- flopy/mf6/modflow/mfgwtcnc.py | 321 +++++-- flopy/mf6/modflow/mfgwtdis.py | 288 +++++-- flopy/mf6/modflow/mfgwtdisu.py | 406 ++++++--- flopy/mf6/modflow/mfgwtdisv.py | 381 ++++++--- flopy/mf6/modflow/mfgwtdsp.py | 178 ++-- flopy/mf6/modflow/mfgwtfmi.py | 105 ++- flopy/mf6/modflow/mfgwtgwt.py | 410 ++++++--- flopy/mf6/modflow/mfgwtic.py | 74 +- flopy/mf6/modflow/mfgwtist.py | 521 ++++++++---- flopy/mf6/modflow/mfgwtlkt.py | 657 +++++++++++---- flopy/mf6/modflow/mfgwtmst.py | 231 +++-- flopy/mf6/modflow/mfgwtmvt.py | 234 ++++-- flopy/mf6/modflow/mfgwtmwt.py | 615 ++++++++++---- flopy/mf6/modflow/mfgwtnam.py | 290 +++++-- flopy/mf6/modflow/mfgwtoc.py | 432 +++++++--- flopy/mf6/modflow/mfgwtsft.py | 659 +++++++++++---- flopy/mf6/modflow/mfgwtsrc.py | 311 +++++-- flopy/mf6/modflow/mfgwtssm.py | 162 +++- flopy/mf6/modflow/mfgwtuzt.py | 631 ++++++++++---- flopy/mf6/modflow/mfims.py | 608 ++++++++++---- flopy/mf6/modflow/mfmvr.py | 431 +++++++--- flopy/mf6/modflow/mfmvt.py | 231 +++-- flopy/mf6/modflow/mfnam.py | 342 ++++++-- flopy/mf6/modflow/mfprt.py | 72 +- flopy/mf6/modflow/mfprtdis.py | 276 ++++-- flopy/mf6/modflow/mfprtdisv.py | 373 ++++++--- flopy/mf6/modflow/mfprtfmi.py | 89 +- flopy/mf6/modflow/mfprtmip.py | 84 +- flopy/mf6/modflow/mfprtnam.py | 104 ++- flopy/mf6/modflow/mfprtoc.py | 496 ++++++++--- flopy/mf6/modflow/mfprtprp.py | 604 ++++++++++---- flopy/mf6/modflow/mfpts.py | 271 ++++-- flopy/mf6/modflow/mfsimulation.py | 104 ++- flopy/mf6/modflow/mftdis.py | 178 ++-- flopy/mf6/modflow/mfutlats.py | 155 +++- flopy/mf6/modflow/mfutlhpc.py | 79 +- flopy/mf6/modflow/mfutllaktab.py | 104 ++- flopy/mf6/modflow/mfutlncf.py | 262 ++++-- flopy/mf6/modflow/mfutlobs.py | 183 +++- flopy/mf6/modflow/mfutlsfrtab.py | 93 ++- flopy/mf6/modflow/mfutlspc.py | 192 +++-- flopy/mf6/modflow/mfutlspca.py | 159 +++- flopy/mf6/modflow/mfutltas.py | 254 ++++-- flopy/mf6/modflow/mfutlts.py | 361 +++++--- flopy/mf6/modflow/mfutltvk.py | 240 ++++-- flopy/mf6/modflow/mfutltvs.py | 254 ++++-- flopy/version.py | 4 +- version.txt | 2 +- 125 files changed, 25130 insertions(+), 9003 deletions(-) diff --git a/.docs/md/version_changes.md b/.docs/md/version_changes.md index 51e1e22b7f..95083ddb94 100644 --- a/.docs/md/version_changes.md +++ b/.docs/md/version_changes.md @@ -1,4 +1,31 @@ # Changelog +### Version 3.9.2 + +#### New features + +* [feat(mf2005,mf2k)](https://github.com/modflowpy/flopy/commit/f058122a51404aadb5d28d23548ec96eff82ec8a): Allow loading custom flopy packages (#2404). Committed by Davíd Brakenhoff on 2025-01-10. +* [feat(generate_classes.py)](https://github.com/modflowpy/flopy/commit/48ec3b2f2cfa0287c94fb6d62a596196294cfc2d): Allow excluding components (#2447). Committed by wpbonelli on 2025-02-11. + +#### Bug fixes + +* [fix(mp7particledata)](https://github.com/modflowpy/flopy/commit/942a4cd0eadec1201b430867f84412a03751747e): Add global_xy option for to_coords/to_prp (#2405). Committed by Davíd Brakenhoff on 2024-12-23. +* [fix(resolve_exe)](https://github.com/modflowpy/flopy/commit/4deabe1d34b3476d9134bf0b64614ef0779634bb): Allow shutil.which() to find exe without suffix in Windows (#2408). Committed by martclanor on 2025-01-10. +* [fix(cvfdutil)](https://github.com/modflowpy/flopy/commit/f9da244347f6e076e8e5d65562efc06640b07677): Fix skip_hanging_node_check (#2423). Committed by Oscar Sanchez on 2025-01-21. +* [fix(Mf6Splitter)](https://github.com/modflowpy/flopy/commit/25ec5cd4ce32e8862760ef672ef709fbb870d19f): Multiple bug fixes and added support (#2418). Committed by Joshua Larsen on 2025-01-30. +* [fix(mp7particledata.py)](https://github.com/modflowpy/flopy/commit/9385daac51d064b34ca72117a27d5ec741a640c7): Avoid attribute error (#2441). Committed by wpbonelli on 2025-02-08. + +#### Perf + +* [perf(tutorials)](https://github.com/modflowpy/flopy/commit/8fd63758606091b323b01b1b77d39be964650cdd): Skip some writes in export_vtk_tutorial.py (#2432). Committed by wpbonelli on 2025-02-03. + +#### Refactoring + +* [refactor(model_splitter)](https://github.com/modflowpy/flopy/commit/bb587c3e46d934799e1e1060681dd10073ad935e): Add timeseries support (#2403). Committed by Joshua Larsen on 2025-01-03. +* [refactor(FlopyBinaryData)](https://github.com/modflowpy/flopy/commit/ef5ca6a6361bab020f9e198563c18d7242f12e28): Make properties readonly, deprecate set_float() (#2421). Committed by wpbonelli on 2025-01-20. +* [refactor(get-modflow)](https://github.com/modflowpy/flopy/commit/6a8f313df441c73673f8780a203a7233ae4f3ecc): Don't hard-code available os tags (#2426). Committed by wpbonelli on 2025-01-26. +* [refactor(mf6)](https://github.com/modflowpy/flopy/commit/816ff8108f6985e0b2ead549a13f6446639d8f61): Allow using existing dfn files in generate_classes.py (#2431). Committed by wpbonelli on 2025-02-03. +* [refactor(ModelTime)](https://github.com/modflowpy/flopy/commit/069d5430760fd0a9eb5eff6e8f36ce39974e25d3): Refactor ModelTime and add new features (#2367). Committed by Joshua Larsen on 2025-02-05. + ### Version 3.9.1 #### Mf6 diff --git a/CITATION.cff b/CITATION.cff index c1c58775a6..00d94e4fa3 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -3,8 +3,8 @@ message: If you use this software, please cite both the article from preferred-c references, and the software itself. type: software title: FloPy -version: 3.10.0.dev1 -date-released: '2024-12-20' +version: 3.9.2 +date-released: '2025-02-11' doi: 10.5066/F7BK19FH abstract: A Python package to create, run, and post-process MODFLOW-based models. repository-artifact: https://pypi.org/project/flopy diff --git a/README.md b/README.md index b8edc7160c..1c6f8c03de 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ flopy3 -### Version 3.10.0.dev1 +### Version 3.9.2 [![flopy continuous integration](https://github.com/modflowpy/flopy/actions/workflows/commit.yml/badge.svg?branch=develop)](https://github.com/modflowpy/flopy/actions/workflows/commit.yml) [![Read the Docs](https://github.com/modflowpy/flopy/actions/workflows/rtd.yml/badge.svg?branch=develop)](https://github.com/modflowpy/flopy/actions/workflows/rtd.yml) @@ -150,7 +150,7 @@ How to Cite ##### ***Software/Code citation for FloPy:*** -[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2024, FloPy v3.10.0.dev1: U.S. Geological Survey Software Release, 20 December 2024, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) +[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2025, FloPy v3.9.2: U.S. Geological Survey Software Release, 11 February 2025, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) Additional FloPy Related Publications diff --git a/docs/PyPI_release.md b/docs/PyPI_release.md index ad532fee5c..0e10ca6af2 100644 --- a/docs/PyPI_release.md +++ b/docs/PyPI_release.md @@ -30,4 +30,4 @@ How to Cite *Software/Code citation for FloPy:* -[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2024, FloPy v3.10.0.dev1: U.S. Geological Survey Software Release, 20 December 2024, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) +[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2025, FloPy v3.9.2: U.S. Geological Survey Software Release, 11 February 2025, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) diff --git a/flopy/mf6/data/dfn/gwe-adv.dfn b/flopy/mf6/data/dfn/gwe-adv.dfn index 682ed4a756..eaa18993c8 100644 --- a/flopy/mf6/data/dfn/gwe-adv.dfn +++ b/flopy/mf6/data/dfn/gwe-adv.dfn @@ -9,3 +9,11 @@ optional true longname advective scheme description scheme used to solve the advection term. Can be upstream, central, or TVD. If not specified, upstream weighting is the default weighting scheme. + +block options +name ats_percel +type double precision +reader urword +optional true +longname fractional cell distance used for time step calculation +description 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. \ No newline at end of file diff --git a/flopy/mf6/data/dfn/gwe-est.dfn b/flopy/mf6/data/dfn/gwe-est.dfn index 283900bd6b..c975ab0d42 100644 --- a/flopy/mf6/data/dfn/gwe-est.dfn +++ b/flopy/mf6/data/dfn/gwe-est.dfn @@ -9,12 +9,20 @@ longname save calculated flows to budget file description REPLACE save_flows {'{#1}': 'EST'} block options -name zero_order_decay +name zero_order_decay_water type keyword reader urword optional true -longname activate zero-order decay -description is a text keyword to indicate that zero-order decay will occur. Use of this keyword requires that DECAY is specified in the GRIDDATA block. +longname activate zero-order decay in aqueous phase +description is a text keyword to indicate that zero-order decay will occur in the aqueous phase. That is, decay occurs in the water and is a rate per volume of water only, not per volume of aquifer (i.e., grid cell). Use of this keyword requires that DECAY\_WATER is specified in the GRIDDATA block. + +block options +name zero_order_decay_solid +type keyword +reader urword +optional true +longname activate zero-order decay in solid phase +description is a text keyword to indicate that zero-order decay will occur in the solid phase. That is, decay occurs in the solid and is a rate per mass (not volume) of solid only. Use of this keyword requires that DECAY\_SOLID is specified in the GRIDDATA block. block options name density_water @@ -58,14 +66,24 @@ longname porosity description is the mobile domain porosity, defined as the mobile domain pore volume per mobile domain volume. The GWE model does not support the concept of an immobile domain in the context of heat transport. block griddata -name decay +name decay_water type double precision shape (nodes) reader readarray layered true optional true longname aqueous phase decay rate coefficient -description is the rate coefficient for zero-order decay for the aqueous phase of the mobile domain. A negative value indicates heat (energy) production. The dimensions of decay for zero-order decay is energy per length cubed per time. Zero-order decay will have no effect on simulation results unless zero-order decay is specified in the options block. +description is the rate coefficient for zero-order decay for the aqueous phase of the mobile domain. A negative value indicates heat (energy) production. The dimensions of zero-order decay in the aqueous phase are energy per length cubed (volume of water) per time. Zero-order decay in the aqueous phase will have no effect on simulation results unless ZERO\_ORDER\_DECAY\_WATER is specified in the options block. + +block griddata +name decay_solid +type double precision +shape (nodes) +reader readarray +layered true +optional true +longname solid phase decay rate coefficient +description is the rate coefficient for zero-order decay for the solid phase. A negative value indicates heat (energy) production. The dimensions of zero-order decay in the solid phase are energy per mass of solid per time. Zero-order decay in the solid phase will have no effect on simulation results unless ZERO\_ORDER\_DECAY\_SOLID is specified in the options block. block griddata name heat_capacity_solid diff --git a/flopy/mf6/data/dfn/gwe-fmi.dfn b/flopy/mf6/data/dfn/gwe-fmi.dfn index fb71131e60..0a4dfad871 100644 --- a/flopy/mf6/data/dfn/gwe-fmi.dfn +++ b/flopy/mf6/data/dfn/gwe-fmi.dfn @@ -33,7 +33,7 @@ type string tagged false reader urword longname flow type -description is the word GWFBUDGET, GWFHEAD, GWFMOVER or the name of an advanced GWF stress package. If GWFBUDGET is specified, then the corresponding file must be a budget file from a previous GWF Model run. If an advanced GWF stress package name appears then the corresponding file must be the budget file saved by a LAK, SFR, MAW or UZF Package. +description is the word GWFBUDGET, GWFHEAD, GWFGRID, GWFMOVER or the name of an advanced GWF stress package from a previous model run. If GWFBUDGET is specified, then the corresponding file must be a budget file. If GWFHEAD is specified, the file must be a head file. If GWFGRID is specified, the file must be a binary grid file. If GWFMOVER is specified, the file must be a mover file. If an advanced GWF stress package name appears then the corresponding file must be the budget file saved by a LAK, SFR, MAW or UZF Package. block packagedata name filein diff --git a/flopy/mf6/data/dfn/gwe-lke.dfn b/flopy/mf6/data/dfn/gwe-lke.dfn index 6ddb828873..1463b9e79f 100644 --- a/flopy/mf6/data/dfn/gwe-lke.dfn +++ b/flopy/mf6/data/dfn/gwe-lke.dfn @@ -294,7 +294,7 @@ tagged false in_record true reader urword longname boundary thermal conductivity -description is the thermal conductivity of the of the interface between the aquifer cell and the lake. +description is the thermal conductivity of the material between the aquifer cell and the lake. The thickness of the material is defined by the variable RBTHCND. block packagedata name rbthcnd diff --git a/flopy/mf6/data/dfn/gwe-mwe.dfn b/flopy/mf6/data/dfn/gwe-mwe.dfn index 9b69409c30..e08f06ea08 100644 --- a/flopy/mf6/data/dfn/gwe-mwe.dfn +++ b/flopy/mf6/data/dfn/gwe-mwe.dfn @@ -294,7 +294,7 @@ tagged false in_record true reader urword longname thermal conductivity of the feature -description is the thermal conductivity of the interface between the aquifer cell and the feature. +description is the thermal conductivity of the material between the aquifer cell and the feature. The thickness of the material is defined by the variable FTHK. block packagedata name fthk @@ -404,7 +404,7 @@ in_record true reader urword time_series true longname well injection temperature -description real or character value that defines the injection temperature $(e.g., ^{\circ}C or ^{\circ}F)$ for the well. 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. +description real or character value that defines the injection temperature $(e.g.,\:^{\circ}C\:or\:^{\circ}F)$ for the well. 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. block period name auxiliaryrecord diff --git a/flopy/mf6/data/dfn/gwe-sfe.dfn b/flopy/mf6/data/dfn/gwe-sfe.dfn index ed7f29f2a3..a5367c289b 100644 --- a/flopy/mf6/data/dfn/gwe-sfe.dfn +++ b/flopy/mf6/data/dfn/gwe-sfe.dfn @@ -294,7 +294,7 @@ tagged false in_record true reader urword longname boundary thermal conductivity -description is the thermal conductivity of the of the interface between the aquifer cell and the stream reach. +description is the thermal conductivity of the material between the aquifer cell and the stream reach. The thickness of the material is defined by the variable RBTHCND. block packagedata name rbthcnd @@ -404,7 +404,7 @@ in_record true reader urword time_series true longname rainfall temperature -description real or character value that defines the rainfall temperature $(e.g., ^{\circ}C or ^{\circ}F)$ for the reach. 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. +description real or character value that defines the rainfall temperature $(e.g.,\:^{\circ}C\:or\:^{\circ}F)$ for the reach. 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. block period name evaporation @@ -426,7 +426,7 @@ in_record true reader urword time_series true longname runoff temperature -description real or character value that defines the temperature of runoff $(e.g., ^{\circ}C or ^{\circ}F)$ for the reach. Users are free to use whatever temperature scale they want, which might include negative temperatures. 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. +description real or character value that defines the temperature of runoff $(e.g.,\:^{\circ}C\:or\:^{\circ}F)$ for the reach. Users are free to use whatever temperature scale they want, which might include negative temperatures. 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. block period name inflow @@ -437,7 +437,7 @@ in_record true reader urword time_series true longname inflow temperature -description real or character value that defines the temperature of inflow $(e.g., ^{\circ}C or ^{\circ}F)$ for the reach. Users are free to use whatever temperature scale they want, which might include negative temperatures. 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. +description real or character value that defines the temperature of inflow $(e.g.,\:^{\circ}C\:or\:^{\circ}F)$ for the reach. Users are free to use whatever temperature scale they want, which might include negative temperatures. 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. block period name auxiliaryrecord diff --git a/flopy/mf6/data/dfn/gwe-uze.dfn b/flopy/mf6/data/dfn/gwe-uze.dfn index 2599e0f8f9..1ea1073cbe 100644 --- a/flopy/mf6/data/dfn/gwe-uze.dfn +++ b/flopy/mf6/data/dfn/gwe-uze.dfn @@ -384,7 +384,7 @@ in_record true reader urword time_series true longname infiltration temperature -description real or character value that defines the temperature of the infiltration $(e.g., ^{\circ}C or ^{\circ}F)$ for the UZF cell. 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. +description real or character value that defines the temperature of the infiltration $(e.g.,\:^{\circ}C\:or\:^{\circ}F)$ for the UZF cell. 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. block period name uzet diff --git a/flopy/mf6/data/dfn/gwt-fmi.dfn b/flopy/mf6/data/dfn/gwt-fmi.dfn index b129371793..5fe314ff5d 100644 --- a/flopy/mf6/data/dfn/gwt-fmi.dfn +++ b/flopy/mf6/data/dfn/gwt-fmi.dfn @@ -33,7 +33,7 @@ type string tagged false reader urword longname flow type -description is the word GWFBUDGET, GWFHEAD, GWFMOVER or the name of an advanced GWF stress package. If GWFBUDGET is specified, then the corresponding file must be a budget file from a previous GWF Model run. If an advanced GWF stress package name appears then the corresponding file must be the budget file saved by a LAK, SFR, MAW or UZF Package. +description is the word GWFBUDGET, GWFHEAD, GWFMOVER or the name of an advanced GWF stress package. If GWFBUDGET is specified, then the corresponding file must be a budget file. If GWFHEAD is specified, the file must be a head file. If GWFGRID is specified, the file must be a binary grid file. If an advanced GWF stress package name appears then the corresponding file must be the budget file saved by a LAK, SFR, MAW or UZF Package. block packagedata name filein diff --git a/flopy/mf6/data/dfn/gwt-ist.dfn b/flopy/mf6/data/dfn/gwt-ist.dfn index 77b10f01c0..c9fff6583d 100644 --- a/flopy/mf6/data/dfn/gwt-ist.dfn +++ b/flopy/mf6/data/dfn/gwt-ist.dfn @@ -92,7 +92,7 @@ valid linear freundlich langmuir reader urword optional true longname activate sorption -description is a text keyword to indicate that sorption will be activated. Valid sorption options include LINEAR, FREUNDLICH, and LANGMUIR. Use of this keyword requires that BULK\_DENSITY and DISTCOEF are specified in the GRIDDATA block. If sorption is specified as FREUNDLICH or LANGMUIR then SP2 is also required in the GRIDDATA block. +description is a text keyword to indicate that sorption will be activated. Valid sorption options include LINEAR, FREUNDLICH, and LANGMUIR. Use of this keyword requires that BULK\_DENSITY and DISTCOEF are specified in the GRIDDATA block. If sorption is specified as FREUNDLICH or LANGMUIR then SP2 is also required in the GRIDDATA block. The sorption option must be consistent with the sorption option specified in the MST Package or the program will terminate with an error. block options name first_order_decay diff --git a/flopy/mf6/data/dfn/prt-fmi.dfn b/flopy/mf6/data/dfn/prt-fmi.dfn index 3deb36646f..37895ad3e7 100644 --- a/flopy/mf6/data/dfn/prt-fmi.dfn +++ b/flopy/mf6/data/dfn/prt-fmi.dfn @@ -25,7 +25,7 @@ type string tagged false reader urword longname flow type -description is the word GWFBUDGET or GWFHEAD. If GWFBUDGET is specified, then the corresponding file must be a budget file from a previous GWF Model run. +description is the word GWFBUDGET, GWFHEAD, or GWFGRID. If GWFBUDGET is specified, then the corresponding file must be a budget file. If GWFHEAD is specified, the file must be a head file. If GWFGRID is specified, the file must be a binary grid file. block packagedata name filein diff --git a/flopy/mf6/data/dfn/prt-prp.dfn b/flopy/mf6/data/dfn/prt-prp.dfn index be09471848..a7ce258aeb 100644 --- a/flopy/mf6/data/dfn/prt-prp.dfn +++ b/flopy/mf6/data/dfn/prt-prp.dfn @@ -134,7 +134,7 @@ type double precision reader urword optional true longname stop time -description real value defining the maximum simulation time to which particles in the package can be tracked. Particles that have not terminated earlier due to another termination condition will terminate when simulation time STOPTIME is reached. If the last stress period in the simulation consists of more than one time step, particles will not be tracked past the ending time of the last stress period, regardless of STOPTIME. If the last stress period in the simulation consists of a single time step, it is assumed to be a steady-state stress period, and its ending time will not limit the simulation time to which particles can be tracked. If STOPTIME and STOPTRAVELTIME are both provided, particles will be stopped if either is reached. +description real value defining the maximum simulation time to which particles in the package can be tracked. Particles that have not terminated earlier due to another termination condition will terminate when simulation time STOPTIME is reached. If the last stress period in the simulation consists of more than one time step, particles will not be tracked past the ending time of the last stress period, regardless of STOPTIME. If the EXTEND\_TRACKING option is enabled and the last stress period in the simulation is steady-state, the simulation ending time will not limit the time to which particles can be tracked, but STOPTIME and STOPTRAVELTIME will continue to apply. If STOPTIME and STOPTRAVELTIME are both provided, particles will be stopped if either is reached. block options name stoptraveltime @@ -142,7 +142,7 @@ type double precision reader urword optional true longname stop travel time -description real value defining the maximum travel time over which particles in the model can be tracked. Particles that have not terminated earlier due to another termination condition will terminate when their travel time reaches STOPTRAVELTIME. If the last stress period in the simulation consists of more than one time step, particles will not be tracked past the ending time of the last stress period, regardless of STOPTRAVELTIME. If the last stress period in the simulation consists of a single time step, it is assumed to be a steady-state stress period, and its ending time will not limit the travel time over which particles can be tracked. If STOPTIME and STOPTRAVELTIME are both provided, particles will be stopped if either is reached. +description real value defining the maximum travel time over which particles in the model can be tracked. Particles that have not terminated earlier due to another termination condition will terminate when their travel time reaches STOPTRAVELTIME. If the last stress period in the simulation consists of more than one time step, particles will not be tracked past the ending time of the last stress period, regardless of STOPTRAVELTIME. If the EXTEND\_TRACKING option is enabled and the last stress period in the simulation is steady-state, the simulation ending time will not limit the time to which particles can be tracked, but STOPTIME and STOPTRAVELTIME will continue to apply. If STOPTIME and STOPTRAVELTIME are both provided, particles will be stopped if either is reached. block options name stop_at_weak_sink @@ -337,7 +337,7 @@ description block period name releasesetting -type keystring all first frequency steps fraction +type keystring all first last frequency steps fraction shape tagged false in_record true @@ -400,6 +400,6 @@ tagged true in_record true reader urword optional true -removed 6.5.1 +removed 6.6.0 longname description release particles after the specified fraction of the time step has elapsed. If FRACTION is not set, particles are released at the start of the specified time step(s). FRACTION must be a single value when used with ALL, FIRST, or FREQUENCY. When used with STEPS, FRACTION may be a single value or an array of the same length as STEPS. If a single FRACTION value is provided with STEPS, the fraction applies to all steps. NOTE: The FRACTION option has been removed. For fine control over release timing, specify times explicitly using the RELEASETIMES block. diff --git a/flopy/mf6/data/dfn/sim-nam.dfn b/flopy/mf6/data/dfn/sim-nam.dfn index c22dbc7f1c..3e0955f068 100644 --- a/flopy/mf6/data/dfn/sim-nam.dfn +++ b/flopy/mf6/data/dfn/sim-nam.dfn @@ -25,6 +25,15 @@ longname memory print option description is a flag that controls printing of detailed memory manager usage to the end of the simulation list file. NONE means do not print detailed information. SUMMARY means print only the total memory for each simulation component. ALL means print information for each variable stored in the memory manager. NONE is default if MEMORY\_PRINT\_OPTION is not specified. mf6internal prmem +block options +name profile_option +type string +reader urword +optional true +longname profiling option +description is a flag that controls performance profiling and reporting. NONE disables profiling. SUMMARY means to measure and print a coarse performance profile. DETAIL means collect and print information with the highest resolution available. NONE is default if PROFILE\_OPTION is not specified. +mf6internal prprof + block options name maxerrors type integer diff --git a/flopy/mf6/data/dfn/utl-ats.dfn b/flopy/mf6/data/dfn/utl-ats.dfn index c43b4de609..8349aace84 100644 --- a/flopy/mf6/data/dfn/utl-ats.dfn +++ b/flopy/mf6/data/dfn/utl-ats.dfn @@ -72,7 +72,7 @@ tagged false reader urword optional false longname time step multiplier factor -description is the time step multiplier factor for this period. If the number of outer solver iterations are less than the product of the maximum number of outer iterations (OUTER\_MAXIMUM) and ATS\_OUTER\_MAXIMUM\_FRACTION (an optional variable in the IMS input file with a default value of 1/3), then the time step length is multiplied by dtadj. If the number of outer solver iterations are greater than the product of the maximum number of outer iterations and ATS\_OUTER\_MAXIMUM\_FRACTION, then the time step length is divided by dtadj. dtadj must be zero, one, or greater than one. If dtadj is zero or one, then it has no effect on the simulation. A value between 2.0 and 5.0 can be used as an initial estimate. +description is the time step multiplier factor for this period. If the number of outer solver iterations are less than the product of the maximum number of outer iterations (OUTER\_MAXIMUM) and ATS\_OUTER\_MAXIMUM\_FRACTION (an optional variable in the IMS input file with a default value of 1/3), then the time step length is multiplied by dtadj. If the number of outer solver iterations are greater than the product of the maximum number of outer iterations and 1.0 minus ATS\_OUTER\_MAXIMUM\_FRACTION, then the time step length is divided by dtadj. dtadj must be zero, one, or greater than one. If dtadj is zero or one, then it has no effect on the simulation. A value between 2.0 and 5.0 can be used as an initial estimate. block perioddata name dtfailadj diff --git a/flopy/mf6/data/dfn/utl-hpc.dfn b/flopy/mf6/data/dfn/utl-hpc.dfn index 378fe77d06..61ee61d78c 100644 --- a/flopy/mf6/data/dfn/utl-hpc.dfn +++ b/flopy/mf6/data/dfn/utl-hpc.dfn @@ -1,5 +1,5 @@ # --------------------- sim hpc options --------------------- -# flopy subpackage hpc_filerecord hpc hpc_data hpc +# flopy subpackage hpc_filerecord hpc hpc_data hpc_data # flopy parent_name_type parent_package MFSimulation block options diff --git a/flopy/mf6/data/dfn/utl-ncf.dfn b/flopy/mf6/data/dfn/utl-ncf.dfn index f6dc80d503..75075c8cce 100644 --- a/flopy/mf6/data/dfn/utl-ncf.dfn +++ b/flopy/mf6/data/dfn/utl-ncf.dfn @@ -10,7 +10,7 @@ shape lenbigline reader urword optional true longname CRS well-known text (WKT) string -description is the CRS well-known text (WKT) string. +description is the coordinate reference system (CRS) well-known text (WKT) string. block options name deflate diff --git a/flopy/mf6/modflow/mfems.py b/flopy/mf6/modflow/mfems.py index a6a419639d..0761c77323 100644 --- a/flopy/mf6/modflow/mfems.py +++ b/flopy/mf6/modflow/mfems.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage @@ -22,7 +22,7 @@ class ModflowEms(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ @@ -32,14 +32,16 @@ class ModflowEms(mfpackage.MFPackage): dfn_file_name = "sln-ems.dfn" dfn = [ - ["header", - ["solution_package", "*"], ], - ] - - def __init__(self, simulation, loading_package=False, filename=None, - pname=None, **kwargs): - super().__init__(simulation, "ems", filename, pname, - loading_package, **kwargs) + [ + "header", + ["solution_package", "*"], + ], + ] + + def __init__( + self, simulation, loading_package=False, filename=None, pname=None, **kwargs + ): + super().__init__(simulation, "ems", filename, pname, loading_package, **kwargs) # set up variables self._init_complete = True diff --git a/flopy/mf6/modflow/mfgnc.py b/flopy/mf6/modflow/mfgnc.py index 7673bf3a86..22d3e26d7f 100644 --- a/flopy/mf6/modflow/mfgnc.py +++ b/flopy/mf6/modflow/mfgnc.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -93,49 +93,121 @@ class ModflowGnc(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - gncdata = ListTemplateGenerator(('gnc', 'gncdata', 'gncdata')) + + gncdata = ListTemplateGenerator(("gnc", "gncdata", "gncdata")) package_abbr = "gnc" _package_type = "gnc" dfn_file_name = "gwf-gnc.dfn" dfn = [ - ["header", ], - ["block options", "name print_input", "type keyword", - "reader urword", "optional true"], - ["block options", "name print_flows", "type keyword", - "reader urword", "optional true"], - ["block options", "name explicit", "type keyword", "tagged true", - "reader urword", "optional true"], - ["block dimensions", "name numgnc", "type integer", - "reader urword", "optional false"], - ["block dimensions", "name numalphaj", "type integer", - "reader urword", "optional false"], - ["block gncdata", "name gncdata", + [ + "header", + ], + [ + "block options", + "name print_input", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name print_flows", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name explicit", + "type keyword", + "tagged true", + "reader urword", + "optional true", + ], + [ + "block dimensions", + "name numgnc", + "type integer", + "reader urword", + "optional false", + ], + [ + "block dimensions", + "name numalphaj", + "type integer", + "reader urword", + "optional false", + ], + [ + "block gncdata", + "name gncdata", "type recarray cellidn cellidm cellidsj alphasj", - "shape (maxbound)", "reader urword"], - ["block gncdata", "name cellidn", "type integer", "shape", - "tagged false", "in_record true", "reader urword", - "numeric_index true"], - ["block gncdata", "name cellidm", "type integer", "shape", - "tagged false", "in_record true", "reader urword", - "numeric_index true"], - ["block gncdata", "name cellidsj", "type integer", - "shape (numalphaj)", "tagged false", "in_record true", - "reader urword", "numeric_index true"], - ["block gncdata", "name alphasj", "type double precision", - "shape (numalphaj)", "tagged false", "in_record true", - "reader urword"]] + "shape (maxbound)", + "reader urword", + ], + [ + "block gncdata", + "name cellidn", + "type integer", + "shape", + "tagged false", + "in_record true", + "reader urword", + "numeric_index true", + ], + [ + "block gncdata", + "name cellidm", + "type integer", + "shape", + "tagged false", + "in_record true", + "reader urword", + "numeric_index true", + ], + [ + "block gncdata", + "name cellidsj", + "type integer", + "shape (numalphaj)", + "tagged false", + "in_record true", + "reader urword", + "numeric_index true", + ], + [ + "block gncdata", + "name alphasj", + "type double precision", + "shape (numalphaj)", + "tagged false", + "in_record true", + "reader urword", + ], + ] - def __init__(self, parent_model_or_package, loading_package=False, - print_input=None, print_flows=None, explicit=None, - numgnc=None, numalphaj=None, gncdata=None, filename=None, - pname=None, **kwargs): - super().__init__(parent_model_or_package, "gnc", filename, pname, - loading_package, **kwargs) + def __init__( + self, + parent_model_or_package, + loading_package=False, + print_input=None, + print_flows=None, + explicit=None, + numgnc=None, + numalphaj=None, + gncdata=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__( + parent_model_or_package, "gnc", filename, pname, loading_package, **kwargs + ) # set up variables self.print_input = self.build_mfdata("print_input", print_input) @@ -161,24 +233,55 @@ class GncPackages(mfpackage.MFChildPackages): Adds a new ModflowGwfgnc package to the container. See ModflowGwfgnc init documentation for definition of parameters. """ + package_abbr = "gncpackages" - def initialize(self, print_input=None, print_flows=None, explicit=None, - numgnc=None, numalphaj=None, gncdata=None, filename=None, - pname=None): - new_package = ModflowGnc(self._cpparent, print_input=print_input, - print_flows=print_flows, explicit=explicit, - numgnc=numgnc, numalphaj=numalphaj, - gncdata=gncdata, filename=filename, - pname=pname, child_builder_call=True) + def initialize( + self, + print_input=None, + print_flows=None, + explicit=None, + numgnc=None, + numalphaj=None, + gncdata=None, + filename=None, + pname=None, + ): + new_package = ModflowGnc( + self._cpparent, + print_input=print_input, + print_flows=print_flows, + explicit=explicit, + numgnc=numgnc, + numalphaj=numalphaj, + gncdata=gncdata, + filename=filename, + pname=pname, + child_builder_call=True, + ) self.init_package(new_package, filename) - def append_package(self, print_input=None, print_flows=None, - explicit=None, numgnc=None, numalphaj=None, gncdata=None, - filename=None, pname=None): - new_package = ModflowGwfgnc(self._cpparent, print_input=print_input, - print_flows=print_flows, explicit=explicit, - numgnc=numgnc, numalphaj=numalphaj, - gncdata=gncdata, filename=filename, - pname=pname, child_builder_call=True) + def append_package( + self, + print_input=None, + print_flows=None, + explicit=None, + numgnc=None, + numalphaj=None, + gncdata=None, + filename=None, + pname=None, + ): + new_package = ModflowGwfgnc( + self._cpparent, + print_input=print_input, + print_flows=print_flows, + explicit=explicit, + numgnc=numgnc, + numalphaj=numalphaj, + gncdata=gncdata, + filename=filename, + pname=pname, + child_builder_call=True, + ) self._append_package(new_package, filename) diff --git a/flopy/mf6/modflow/mfgwe.py b/flopy/mf6/modflow/mfgwe.py index f9905a8881..a23c097029 100644 --- a/flopy/mf6/modflow/mfgwe.py +++ b/flopy/mf6/modflow/mfgwe.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfmodel from ..data.mfdatautil import ArrayTemplateGenerator, ListTemplateGenerator @@ -76,19 +76,36 @@ class ModflowGwe(mfmodel.MFModel): model_ws : string, strict : boolean) : MFSimulation a class method that loads a model from files """ - model_type = 'gwe' - def __init__(self, simulation, modelname='model', model_nam_file=None, - version='mf6', exe_name='mf6', model_rel_path='.', list=None, - print_input=None, print_flows=None, save_flows=None, - nc_mesh2d_filerecord=None, nc_structured_filerecord=None, - nc_filerecord=None, **kwargs,): - super().__init__(simulation, model_type='gwe6', - modelname=modelname, - model_nam_file=model_nam_file, - version=version, exe_name=exe_name, - model_rel_path=model_rel_path, - **kwargs,) + model_type = "gwe" + + def __init__( + self, + simulation, + modelname="model", + model_nam_file=None, + version="mf6", + exe_name="mf6", + model_rel_path=".", + list=None, + print_input=None, + print_flows=None, + save_flows=None, + nc_mesh2d_filerecord=None, + nc_structured_filerecord=None, + nc_filerecord=None, + **kwargs, + ): + super().__init__( + simulation, + model_type="gwe6", + modelname=modelname, + model_nam_file=model_nam_file, + version=version, + exe_name=exe_name, + model_rel_path=model_rel_path, + **kwargs, + ) self.name_file.list.set_data(list) self.name_file.print_input.set_data(print_input) @@ -107,11 +124,28 @@ def __init__(self, simulation, modelname='model', model_nam_file=None, self.nc_filerecord = self.name_file.nc_filerecord @classmethod - def load(cls, simulation, structure, modelname='NewModel', - model_nam_file='modflowtest.nam', version='mf6', - exe_name='mf6', strict=True, model_rel_path='.', - load_only=None): - return mfmodel.MFModel.load_base(cls, simulation, structure, modelname, - model_nam_file, 'gwe6', version, - exe_name, strict, model_rel_path, - load_only) + def load( + cls, + simulation, + structure, + modelname="NewModel", + model_nam_file="modflowtest.nam", + version="mf6", + exe_name="mf6", + strict=True, + model_rel_path=".", + load_only=None, + ): + return mfmodel.MFModel.load_base( + cls, + simulation, + structure, + modelname, + model_nam_file, + "gwe6", + version, + exe_name, + strict, + model_rel_path, + load_only, + ) diff --git a/flopy/mf6/modflow/mfgweadv.py b/flopy/mf6/modflow/mfgweadv.py index ef69a39ef0..28bc3aabcb 100644 --- a/flopy/mf6/modflow/mfgweadv.py +++ b/flopy/mf6/modflow/mfgweadv.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage @@ -20,13 +20,26 @@ class ModflowGweadv(mfpackage.MFPackage): * 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 + * ats_percel (double) 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 : 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ @@ -36,15 +49,39 @@ class ModflowGweadv(mfpackage.MFPackage): dfn_file_name = "gwe-adv.dfn" dfn = [ - ["header", ], - ["block options", "name scheme", "type string", - "valid central upstream tvd", "reader urword", "optional true"]] + [ + "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, filename=None, - pname=None, **kwargs): - super().__init__(model, "adv", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + scheme=None, + ats_percel=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "adv", filename, pname, loading_package, **kwargs) # set up variables self.scheme = self.build_mfdata("scheme", scheme) + self.ats_percel = self.build_mfdata("ats_percel", ats_percel) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwecnd.py b/flopy/mf6/modflow/mfgwecnd.py index c6c2b6c74d..ff0f2af896 100644 --- a/flopy/mf6/modflow/mfgwecnd.py +++ b/flopy/mf6/modflow/mfgwecnd.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ArrayTemplateGenerator @@ -82,69 +82,161 @@ class ModflowGwecnd(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - alh = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'alh')) - alv = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'alv')) - ath1 = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'ath1')) - ath2 = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'ath2')) - atv = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'atv')) - ktw = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'ktw')) - kts = ArrayTemplateGenerator(('gwe6', 'cnd', 'griddata', 'kts')) + + alh = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "alh")) + alv = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "alv")) + ath1 = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "ath1")) + ath2 = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "ath2")) + atv = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "atv")) + ktw = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "ktw")) + kts = ArrayTemplateGenerator(("gwe6", "cnd", "griddata", "kts")) package_abbr = "gwecnd" _package_type = "cnd" dfn_file_name = "gwe-cnd.dfn" dfn = [ - ["header", ], - ["block options", "name xt3d_off", "type keyword", "shape", - "reader urword", "optional true"], - ["block options", "name xt3d_rhs", "type keyword", "shape", - "reader urword", "optional true"], - ["block options", "name export_array_ascii", "type keyword", - "reader urword", "optional true", "mf6internal export_ascii"], - ["block options", "name export_array_netcdf", "type keyword", - "reader urword", "optional true", "mf6internal export_nc", - "extended true"], - ["block griddata", "name alh", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block griddata", "name alv", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block griddata", "name ath1", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block griddata", "name ath2", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block griddata", "name atv", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block griddata", "name ktw", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block griddata", "name kts", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "optional true"]] + [ + "header", + ], + [ + "block options", + "name xt3d_off", + "type keyword", + "shape", + "reader urword", + "optional true", + ], + [ + "block options", + "name xt3d_rhs", + "type keyword", + "shape", + "reader urword", + "optional true", + ], + [ + "block options", + "name export_array_ascii", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_ascii", + ], + [ + "block options", + "name export_array_netcdf", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_nc", + "extended true", + ], + [ + "block griddata", + "name alh", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block griddata", + "name alv", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block griddata", + "name ath1", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block griddata", + "name ath2", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block griddata", + "name atv", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block griddata", + "name ktw", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block griddata", + "name kts", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + ] - def __init__(self, model, loading_package=False, xt3d_off=None, - xt3d_rhs=None, export_array_ascii=None, - export_array_netcdf=None, alh=None, alv=None, ath1=None, - ath2=None, atv=None, ktw=None, kts=None, filename=None, - pname=None, **kwargs): - super().__init__(model, "cnd", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + xt3d_off=None, + xt3d_rhs=None, + export_array_ascii=None, + export_array_netcdf=None, + alh=None, + alv=None, + ath1=None, + ath2=None, + atv=None, + ktw=None, + kts=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "cnd", filename, pname, loading_package, **kwargs) # set up variables self.xt3d_off = self.build_mfdata("xt3d_off", xt3d_off) self.xt3d_rhs = self.build_mfdata("xt3d_rhs", xt3d_rhs) - self.export_array_ascii = self.build_mfdata("export_array_ascii", - export_array_ascii) - self.export_array_netcdf = self.build_mfdata("export_array_netcdf", - export_array_netcdf) + self.export_array_ascii = self.build_mfdata( + "export_array_ascii", export_array_ascii + ) + self.export_array_netcdf = self.build_mfdata( + "export_array_netcdf", export_array_netcdf + ) self.alh = self.build_mfdata("alh", alh) self.alv = self.build_mfdata("alv", alv) self.ath1 = self.build_mfdata("ath1", ath1) diff --git a/flopy/mf6/modflow/mfgwectp.py b/flopy/mf6/modflow/mfgwectp.py index 84205b0619..a959ca65be 100644 --- a/flopy/mf6/modflow/mfgwectp.py +++ b/flopy/mf6/modflow/mfgwectp.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -97,88 +97,238 @@ class ModflowGwectp(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - auxiliary = ListTemplateGenerator(('gwe6', 'ctp', 'options', - 'auxiliary')) - ts_filerecord = ListTemplateGenerator(('gwe6', 'ctp', 'options', - 'ts_filerecord')) - obs_filerecord = ListTemplateGenerator(('gwe6', 'ctp', 'options', - 'obs_filerecord')) - stress_period_data = ListTemplateGenerator(('gwe6', 'ctp', 'period', - 'stress_period_data')) + + auxiliary = ListTemplateGenerator(("gwe6", "ctp", "options", "auxiliary")) + ts_filerecord = ListTemplateGenerator(("gwe6", "ctp", "options", "ts_filerecord")) + obs_filerecord = ListTemplateGenerator(("gwe6", "ctp", "options", "obs_filerecord")) + stress_period_data = ListTemplateGenerator( + ("gwe6", "ctp", "period", "stress_period_data") + ) package_abbr = "gwectp" _package_type = "ctp" dfn_file_name = "gwe-ctp.dfn" dfn = [ - ["header", - "multi-package", ], - ["block options", "name auxiliary", "type string", - "shape (naux)", "reader urword", "optional true"], - ["block options", "name auxmultname", "type string", "shape", - "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", "mf6internal iprflow"], - ["block options", "name print_flows", "type keyword", - "reader urword", "optional true", "mf6internal ipakcb"], - ["block options", "name save_flows", "type keyword", - "reader urword", "optional true", "mf6internal iprpak"], - ["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 dimensions", "name maxbound", "type integer", - "reader urword", "optional false"], - ["block period", "name iper", "type integer", - "block_variable True", "in_record true", "tagged false", "shape", - "valid", "reader urword", "optional false"], - ["block period", "name stress_period_data", - "type recarray cellid temp aux boundname", "shape (maxbound)", - "reader urword", "mf6internal spd"], - ["block period", "name cellid", "type integer", - "shape (ncelldim)", "tagged false", "in_record true", - "reader urword"], - ["block period", "name temp", "type double precision", "shape", - "tagged false", "in_record true", "reader urword", - "time_series true", "mf6internal tspvar"], - ["block period", "name aux", "type double precision", - "in_record true", "tagged false", "shape (naux)", "reader urword", - "optional true", "time_series true", "mf6internal auxvar"], - ["block period", "name boundname", "type string", "shape", - "tagged false", "in_record true", "reader urword", - "optional true"]] + [ + "header", + "multi-package", + ], + [ + "block options", + "name auxiliary", + "type string", + "shape (naux)", + "reader urword", + "optional true", + ], + [ + "block options", + "name auxmultname", + "type string", + "shape", + "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", + "mf6internal iprflow", + ], + [ + "block options", + "name print_flows", + "type keyword", + "reader urword", + "optional true", + "mf6internal ipakcb", + ], + [ + "block options", + "name save_flows", + "type keyword", + "reader urword", + "optional true", + "mf6internal iprpak", + ], + [ + "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 dimensions", + "name maxbound", + "type integer", + "reader urword", + "optional false", + ], + [ + "block period", + "name iper", + "type integer", + "block_variable True", + "in_record true", + "tagged false", + "shape", + "valid", + "reader urword", + "optional false", + ], + [ + "block period", + "name stress_period_data", + "type recarray cellid temp aux boundname", + "shape (maxbound)", + "reader urword", + "mf6internal spd", + ], + [ + "block period", + "name cellid", + "type integer", + "shape (ncelldim)", + "tagged false", + "in_record true", + "reader urword", + ], + [ + "block period", + "name temp", + "type double precision", + "shape", + "tagged false", + "in_record true", + "reader urword", + "time_series true", + "mf6internal tspvar", + ], + [ + "block period", + "name aux", + "type double precision", + "in_record true", + "tagged false", + "shape (naux)", + "reader urword", + "optional true", + "time_series true", + "mf6internal auxvar", + ], + [ + "block period", + "name boundname", + "type string", + "shape", + "tagged false", + "in_record true", + "reader urword", + "optional true", + ], + ] - def __init__(self, model, loading_package=False, auxiliary=None, - auxmultname=None, boundnames=None, print_input=None, - print_flows=None, save_flows=None, timeseries=None, - observations=None, maxbound=None, stress_period_data=None, - filename=None, pname=None, **kwargs): - super().__init__(model, "ctp", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + auxiliary=None, + auxmultname=None, + boundnames=None, + print_input=None, + print_flows=None, + save_flows=None, + timeseries=None, + observations=None, + maxbound=None, + stress_period_data=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "ctp", filename, pname, loading_package, **kwargs) # set up variables self.auxiliary = self.build_mfdata("auxiliary", auxiliary) @@ -187,17 +337,16 @@ def __init__(self, model, loading_package=False, auxiliary=None, self.print_input = self.build_mfdata("print_input", print_input) self.print_flows = self.build_mfdata("print_flows", print_flows) self.save_flows = self.build_mfdata("save_flows", save_flows) - 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._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.maxbound = self.build_mfdata("maxbound", maxbound) - self.stress_period_data = self.build_mfdata("stress_period_data", - stress_period_data) + self.stress_period_data = self.build_mfdata( + "stress_period_data", stress_period_data + ) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwedis.py b/flopy/mf6/modflow/mfgwedis.py index 65536c044d..b3eedbc145 100644 --- a/flopy/mf6/modflow/mfgwedis.py +++ b/flopy/mf6/modflow/mfgwedis.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ArrayTemplateGenerator, ListTemplateGenerator @@ -86,81 +86,216 @@ class ModflowGwedis(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - ncf_filerecord = ListTemplateGenerator(('gwe6', 'dis', 'options', - 'ncf_filerecord')) - delr = ArrayTemplateGenerator(('gwe6', 'dis', 'griddata', 'delr')) - delc = ArrayTemplateGenerator(('gwe6', 'dis', 'griddata', 'delc')) - top = ArrayTemplateGenerator(('gwe6', 'dis', 'griddata', 'top')) - botm = ArrayTemplateGenerator(('gwe6', 'dis', 'griddata', 'botm')) - idomain = ArrayTemplateGenerator(('gwe6', 'dis', 'griddata', - 'idomain')) + + ncf_filerecord = ListTemplateGenerator(("gwe6", "dis", "options", "ncf_filerecord")) + delr = ArrayTemplateGenerator(("gwe6", "dis", "griddata", "delr")) + delc = ArrayTemplateGenerator(("gwe6", "dis", "griddata", "delc")) + top = ArrayTemplateGenerator(("gwe6", "dis", "griddata", "top")) + botm = ArrayTemplateGenerator(("gwe6", "dis", "griddata", "botm")) + idomain = ArrayTemplateGenerator(("gwe6", "dis", "griddata", "idomain")) package_abbr = "gwedis" _package_type = "dis" dfn_file_name = "gwe-dis.dfn" dfn = [ - ["header", ], - ["block options", "name length_units", "type string", - "reader urword", "optional true"], - ["block options", "name nogrb", "type keyword", "reader urword", - "optional true"], - ["block options", "name xorigin", "type double precision", - "reader urword", "optional true"], - ["block options", "name yorigin", "type double precision", - "reader urword", "optional true"], - ["block options", "name angrot", "type double precision", - "reader urword", "optional true"], - ["block options", "name export_array_ascii", "type keyword", - "reader urword", "optional true", "mf6internal export_ascii"], - ["block options", "name export_array_netcdf", "type keyword", - "reader urword", "optional true", "mf6internal export_nc", - "extended true"], - ["block options", "name ncf_filerecord", - "type record ncf6 filein ncf6_filename", "reader urword", - "tagged true", "optional true", "construct_package ncf", - "construct_data packagedata", "parameter_name packagedata"], - ["block options", "name ncf6", "type keyword", "in_record true", - "reader urword", "tagged true", "optional false", "extended true"], - ["block options", "name filein", "type keyword", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name ncf6_filename", "type string", - "preserve_case true", "in_record true", "reader urword", - "optional false", "tagged false", "extended true"], - ["block dimensions", "name nlay", "type integer", - "reader urword", "optional false", "default_value 1"], - ["block dimensions", "name nrow", "type integer", - "reader urword", "optional false", "default_value 2"], - ["block dimensions", "name ncol", "type integer", - "reader urword", "optional false", "default_value 2"], - ["block griddata", "name delr", "type double precision", - "shape (ncol)", "reader readarray", "netcdf true", - "default_value 1.0"], - ["block griddata", "name delc", "type double precision", - "shape (nrow)", "reader readarray", "netcdf true", - "default_value 1.0"], - ["block griddata", "name top", "type double precision", - "shape (ncol, nrow)", "reader readarray", "netcdf true", - "default_value 1.0"], - ["block griddata", "name botm", "type double precision", - "shape (ncol, nrow, nlay)", "reader readarray", "layered true", - "netcdf true", "default_value 0."], - ["block griddata", "name idomain", "type integer", - "shape (ncol, nrow, nlay)", "reader readarray", "layered true", - "netcdf true", "optional true"]] + [ + "header", + ], + [ + "block options", + "name length_units", + "type string", + "reader urword", + "optional true", + ], + [ + "block options", + "name nogrb", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name xorigin", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name yorigin", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name angrot", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name export_array_ascii", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_ascii", + ], + [ + "block options", + "name export_array_netcdf", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_nc", + "extended true", + ], + [ + "block options", + "name ncf_filerecord", + "type record ncf6 filein ncf6_filename", + "reader urword", + "tagged true", + "optional true", + "construct_package ncf", + "construct_data packagedata", + "parameter_name packagedata", + ], + [ + "block options", + "name ncf6", + "type keyword", + "in_record true", + "reader urword", + "tagged true", + "optional false", + "extended true", + ], + [ + "block options", + "name filein", + "type keyword", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name ncf6_filename", + "type string", + "preserve_case true", + "in_record true", + "reader urword", + "optional false", + "tagged false", + "extended true", + ], + [ + "block dimensions", + "name nlay", + "type integer", + "reader urword", + "optional false", + "default_value 1", + ], + [ + "block dimensions", + "name nrow", + "type integer", + "reader urword", + "optional false", + "default_value 2", + ], + [ + "block dimensions", + "name ncol", + "type integer", + "reader urword", + "optional false", + "default_value 2", + ], + [ + "block griddata", + "name delr", + "type double precision", + "shape (ncol)", + "reader readarray", + "netcdf true", + "default_value 1.0", + ], + [ + "block griddata", + "name delc", + "type double precision", + "shape (nrow)", + "reader readarray", + "netcdf true", + "default_value 1.0", + ], + [ + "block griddata", + "name top", + "type double precision", + "shape (ncol, nrow)", + "reader readarray", + "netcdf true", + "default_value 1.0", + ], + [ + "block griddata", + "name botm", + "type double precision", + "shape (ncol, nrow, nlay)", + "reader readarray", + "layered true", + "netcdf true", + "default_value 0.", + ], + [ + "block griddata", + "name idomain", + "type integer", + "shape (ncol, nrow, nlay)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + ] - def __init__(self, model, loading_package=False, length_units=None, - nogrb=None, xorigin=None, yorigin=None, angrot=None, - export_array_ascii=None, export_array_netcdf=None, - packagedata=None, nlay=1, nrow=2, ncol=2, delr=1.0, delc=1.0, - top=1.0, botm=0., idomain=None, filename=None, pname=None, - **kwargs): - super().__init__(model, "dis", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + length_units=None, + nogrb=None, + xorigin=None, + yorigin=None, + angrot=None, + export_array_ascii=None, + export_array_netcdf=None, + packagedata=None, + nlay=1, + nrow=2, + ncol=2, + delr=1.0, + delc=1.0, + top=1.0, + botm=0.0, + idomain=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "dis", filename, pname, loading_package, **kwargs) # set up variables self.length_units = self.build_mfdata("length_units", length_units) @@ -168,15 +303,16 @@ def __init__(self, model, loading_package=False, length_units=None, self.xorigin = self.build_mfdata("xorigin", xorigin) self.yorigin = self.build_mfdata("yorigin", yorigin) self.angrot = self.build_mfdata("angrot", angrot) - self.export_array_ascii = self.build_mfdata("export_array_ascii", - export_array_ascii) - self.export_array_netcdf = self.build_mfdata("export_array_netcdf", - export_array_netcdf) - self._ncf_filerecord = self.build_mfdata("ncf_filerecord", - None) - self._ncf_package = self.build_child_package("ncf", packagedata, - "packagedata", - self._ncf_filerecord) + self.export_array_ascii = self.build_mfdata( + "export_array_ascii", export_array_ascii + ) + self.export_array_netcdf = self.build_mfdata( + "export_array_netcdf", export_array_netcdf + ) + self._ncf_filerecord = self.build_mfdata("ncf_filerecord", None) + self._ncf_package = self.build_child_package( + "ncf", packagedata, "packagedata", self._ncf_filerecord + ) self.nlay = self.build_mfdata("nlay", nlay) self.nrow = self.build_mfdata("nrow", nrow) self.ncol = self.build_mfdata("ncol", ncol) diff --git a/flopy/mf6/modflow/mfgwedisu.py b/flopy/mf6/modflow/mfgwedisu.py index b57dc7d06a..a3e1b403fd 100644 --- a/flopy/mf6/modflow/mfgwedisu.py +++ b/flopy/mf6/modflow/mfgwedisu.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ArrayTemplateGenerator, ListTemplateGenerator @@ -184,118 +184,308 @@ class ModflowGwedisu(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - top = ArrayTemplateGenerator(('gwe6', 'disu', 'griddata', 'top')) - bot = ArrayTemplateGenerator(('gwe6', 'disu', 'griddata', 'bot')) - area = ArrayTemplateGenerator(('gwe6', 'disu', 'griddata', 'area')) - idomain = ArrayTemplateGenerator(('gwe6', 'disu', 'griddata', - 'idomain')) - iac = ArrayTemplateGenerator(('gwe6', 'disu', 'connectiondata', - 'iac')) - ja = ArrayTemplateGenerator(('gwe6', 'disu', 'connectiondata', - 'ja')) - ihc = ArrayTemplateGenerator(('gwe6', 'disu', 'connectiondata', - 'ihc')) - cl12 = ArrayTemplateGenerator(('gwe6', 'disu', 'connectiondata', - 'cl12')) - hwva = ArrayTemplateGenerator(('gwe6', 'disu', 'connectiondata', - 'hwva')) - angldegx = ArrayTemplateGenerator(('gwe6', 'disu', 'connectiondata', - 'angldegx')) - vertices = ListTemplateGenerator(('gwe6', 'disu', 'vertices', - 'vertices')) - cell2d = ListTemplateGenerator(('gwe6', 'disu', 'cell2d', 'cell2d')) + + top = ArrayTemplateGenerator(("gwe6", "disu", "griddata", "top")) + bot = ArrayTemplateGenerator(("gwe6", "disu", "griddata", "bot")) + area = ArrayTemplateGenerator(("gwe6", "disu", "griddata", "area")) + idomain = ArrayTemplateGenerator(("gwe6", "disu", "griddata", "idomain")) + iac = ArrayTemplateGenerator(("gwe6", "disu", "connectiondata", "iac")) + ja = ArrayTemplateGenerator(("gwe6", "disu", "connectiondata", "ja")) + ihc = ArrayTemplateGenerator(("gwe6", "disu", "connectiondata", "ihc")) + cl12 = ArrayTemplateGenerator(("gwe6", "disu", "connectiondata", "cl12")) + hwva = ArrayTemplateGenerator(("gwe6", "disu", "connectiondata", "hwva")) + angldegx = ArrayTemplateGenerator(("gwe6", "disu", "connectiondata", "angldegx")) + vertices = ListTemplateGenerator(("gwe6", "disu", "vertices", "vertices")) + cell2d = ListTemplateGenerator(("gwe6", "disu", "cell2d", "cell2d")) package_abbr = "gwedisu" _package_type = "disu" dfn_file_name = "gwe-disu.dfn" dfn = [ - ["header", ], - ["block options", "name length_units", "type string", - "reader urword", "optional true"], - ["block options", "name nogrb", "type keyword", "reader urword", - "optional true"], - ["block options", "name xorigin", "type double precision", - "reader urword", "optional true"], - ["block options", "name yorigin", "type double precision", - "reader urword", "optional true"], - ["block options", "name angrot", "type double precision", - "reader urword", "optional true"], - ["block options", "name vertical_offset_tolerance", - "type double precision", "reader urword", "optional true", - "default_value 0.0", "mf6internal voffsettol"], - ["block options", "name export_array_ascii", "type keyword", - "reader urword", "optional true", "mf6internal export_ascii"], - ["block dimensions", "name nodes", "type integer", - "reader urword", "optional false"], - ["block dimensions", "name nja", "type integer", "reader urword", - "optional false"], - ["block dimensions", "name nvert", "type integer", - "reader urword", "optional true"], - ["block griddata", "name top", "type double precision", - "shape (nodes)", "reader readarray"], - ["block griddata", "name bot", "type double precision", - "shape (nodes)", "reader readarray"], - ["block griddata", "name area", "type double precision", - "shape (nodes)", "reader readarray"], - ["block griddata", "name idomain", "type integer", - "shape (nodes)", "reader readarray", "layered false", - "optional true"], - ["block connectiondata", "name iac", "type integer", - "shape (nodes)", "reader readarray"], - ["block connectiondata", "name ja", "type integer", - "shape (nja)", "reader readarray", "numeric_index true", - "jagged_array iac"], - ["block connectiondata", "name ihc", "type integer", - "shape (nja)", "reader readarray", "jagged_array iac"], - ["block connectiondata", "name cl12", "type double precision", - "shape (nja)", "reader readarray", "jagged_array iac"], - ["block connectiondata", "name hwva", "type double precision", - "shape (nja)", "reader readarray", "jagged_array iac"], - ["block connectiondata", "name angldegx", - "type double precision", "optional true", "shape (nja)", - "reader readarray", "jagged_array iac"], - ["block vertices", "name vertices", "type recarray iv xv yv", - "shape (nvert)", "reader urword", "optional false"], - ["block vertices", "name iv", "type integer", "in_record true", - "tagged false", "reader urword", "optional false", - "numeric_index true"], - ["block vertices", "name xv", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block vertices", "name yv", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block cell2d", "name cell2d", - "type recarray icell2d xc yc ncvert icvert", "shape (nodes)", - "reader urword", "optional false"], - ["block cell2d", "name icell2d", "type integer", - "in_record true", "tagged false", "reader urword", - "optional false", "numeric_index true"], - ["block cell2d", "name xc", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block cell2d", "name yc", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block cell2d", "name ncvert", "type integer", "in_record true", - "tagged false", "reader urword", "optional false"], - ["block cell2d", "name icvert", "type integer", "shape (ncvert)", - "in_record true", "tagged false", "reader urword", - "optional false", "numeric_index true"]] + [ + "header", + ], + [ + "block options", + "name length_units", + "type string", + "reader urword", + "optional true", + ], + [ + "block options", + "name nogrb", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name xorigin", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name yorigin", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name angrot", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name vertical_offset_tolerance", + "type double precision", + "reader urword", + "optional true", + "default_value 0.0", + "mf6internal voffsettol", + ], + [ + "block options", + "name export_array_ascii", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_ascii", + ], + [ + "block dimensions", + "name nodes", + "type integer", + "reader urword", + "optional false", + ], + [ + "block dimensions", + "name nja", + "type integer", + "reader urword", + "optional false", + ], + [ + "block dimensions", + "name nvert", + "type integer", + "reader urword", + "optional true", + ], + [ + "block griddata", + "name top", + "type double precision", + "shape (nodes)", + "reader readarray", + ], + [ + "block griddata", + "name bot", + "type double precision", + "shape (nodes)", + "reader readarray", + ], + [ + "block griddata", + "name area", + "type double precision", + "shape (nodes)", + "reader readarray", + ], + [ + "block griddata", + "name idomain", + "type integer", + "shape (nodes)", + "reader readarray", + "layered false", + "optional true", + ], + [ + "block connectiondata", + "name iac", + "type integer", + "shape (nodes)", + "reader readarray", + ], + [ + "block connectiondata", + "name ja", + "type integer", + "shape (nja)", + "reader readarray", + "numeric_index true", + "jagged_array iac", + ], + [ + "block connectiondata", + "name ihc", + "type integer", + "shape (nja)", + "reader readarray", + "jagged_array iac", + ], + [ + "block connectiondata", + "name cl12", + "type double precision", + "shape (nja)", + "reader readarray", + "jagged_array iac", + ], + [ + "block connectiondata", + "name hwva", + "type double precision", + "shape (nja)", + "reader readarray", + "jagged_array iac", + ], + [ + "block connectiondata", + "name angldegx", + "type double precision", + "optional true", + "shape (nja)", + "reader readarray", + "jagged_array iac", + ], + [ + "block vertices", + "name vertices", + "type recarray iv xv yv", + "shape (nvert)", + "reader urword", + "optional false", + ], + [ + "block vertices", + "name iv", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + [ + "block vertices", + "name xv", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block vertices", + "name yv", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name cell2d", + "type recarray icell2d xc yc ncvert icvert", + "shape (nodes)", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name icell2d", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + [ + "block cell2d", + "name xc", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name yc", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name ncvert", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name icvert", + "type integer", + "shape (ncvert)", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + ] - def __init__(self, model, loading_package=False, length_units=None, - nogrb=None, xorigin=None, yorigin=None, angrot=None, - vertical_offset_tolerance=0.0, export_array_ascii=None, - nodes=None, nja=None, nvert=None, top=None, bot=None, - area=None, idomain=None, iac=None, ja=None, ihc=None, - cl12=None, hwva=None, angldegx=None, vertices=None, - cell2d=None, filename=None, pname=None, **kwargs): - super().__init__(model, "disu", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + length_units=None, + nogrb=None, + xorigin=None, + yorigin=None, + angrot=None, + vertical_offset_tolerance=0.0, + export_array_ascii=None, + nodes=None, + nja=None, + nvert=None, + top=None, + bot=None, + area=None, + idomain=None, + iac=None, + ja=None, + ihc=None, + cl12=None, + hwva=None, + angldegx=None, + vertices=None, + cell2d=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "disu", filename, pname, loading_package, **kwargs) # set up variables self.length_units = self.build_mfdata("length_units", length_units) @@ -304,9 +494,11 @@ def __init__(self, model, loading_package=False, length_units=None, self.yorigin = self.build_mfdata("yorigin", yorigin) self.angrot = self.build_mfdata("angrot", angrot) self.vertical_offset_tolerance = self.build_mfdata( - "vertical_offset_tolerance", vertical_offset_tolerance) - self.export_array_ascii = self.build_mfdata("export_array_ascii", - export_array_ascii) + "vertical_offset_tolerance", vertical_offset_tolerance + ) + self.export_array_ascii = self.build_mfdata( + "export_array_ascii", export_array_ascii + ) self.nodes = self.build_mfdata("nodes", nodes) self.nja = self.build_mfdata("nja", nja) self.nvert = self.build_mfdata("nvert", nvert) diff --git a/flopy/mf6/modflow/mfgwedisv.py b/flopy/mf6/modflow/mfgwedisv.py index 10a95cd280..39bb551d40 100644 --- a/flopy/mf6/modflow/mfgwedisv.py +++ b/flopy/mf6/modflow/mfgwedisv.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ArrayTemplateGenerator, ListTemplateGenerator @@ -114,103 +114,287 @@ class ModflowGwedisv(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - ncf_filerecord = ListTemplateGenerator(('gwe6', 'disv', 'options', - 'ncf_filerecord')) - top = ArrayTemplateGenerator(('gwe6', 'disv', 'griddata', 'top')) - botm = ArrayTemplateGenerator(('gwe6', 'disv', 'griddata', 'botm')) - idomain = ArrayTemplateGenerator(('gwe6', 'disv', 'griddata', - 'idomain')) - vertices = ListTemplateGenerator(('gwe6', 'disv', 'vertices', - 'vertices')) - cell2d = ListTemplateGenerator(('gwe6', 'disv', 'cell2d', 'cell2d')) + + ncf_filerecord = ListTemplateGenerator( + ("gwe6", "disv", "options", "ncf_filerecord") + ) + top = ArrayTemplateGenerator(("gwe6", "disv", "griddata", "top")) + botm = ArrayTemplateGenerator(("gwe6", "disv", "griddata", "botm")) + idomain = ArrayTemplateGenerator(("gwe6", "disv", "griddata", "idomain")) + vertices = ListTemplateGenerator(("gwe6", "disv", "vertices", "vertices")) + cell2d = ListTemplateGenerator(("gwe6", "disv", "cell2d", "cell2d")) package_abbr = "gwedisv" _package_type = "disv" dfn_file_name = "gwe-disv.dfn" dfn = [ - ["header", ], - ["block options", "name length_units", "type string", - "reader urword", "optional true"], - ["block options", "name nogrb", "type keyword", "reader urword", - "optional true"], - ["block options", "name xorigin", "type double precision", - "reader urword", "optional true"], - ["block options", "name yorigin", "type double precision", - "reader urword", "optional true"], - ["block options", "name angrot", "type double precision", - "reader urword", "optional true"], - ["block options", "name export_array_ascii", "type keyword", - "reader urword", "optional true", "mf6internal export_ascii"], - ["block options", "name export_array_netcdf", "type keyword", - "reader urword", "optional true", "mf6internal export_nc", - "extended true"], - ["block options", "name ncf_filerecord", - "type record ncf6 filein ncf6_filename", "reader urword", - "tagged true", "optional true", "construct_package ncf", - "construct_data packagedata", "parameter_name packagedata"], - ["block options", "name ncf6", "type keyword", "in_record true", - "reader urword", "tagged true", "optional false", "extended true"], - ["block options", "name filein", "type keyword", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name ncf6_filename", "type string", - "preserve_case true", "in_record true", "reader urword", - "optional false", "tagged false", "extended true"], - ["block dimensions", "name nlay", "type integer", - "reader urword", "optional false"], - ["block dimensions", "name ncpl", "type integer", - "reader urword", "optional false"], - ["block dimensions", "name nvert", "type integer", - "reader urword", "optional false"], - ["block griddata", "name top", "type double precision", - "shape (ncpl)", "reader readarray", "netcdf true"], - ["block griddata", "name botm", "type double precision", - "shape (ncpl, nlay)", "reader readarray", "layered true", - "netcdf true"], - ["block griddata", "name idomain", "type integer", - "shape (ncpl, nlay)", "reader readarray", "layered true", - "netcdf true", "optional true"], - ["block vertices", "name vertices", "type recarray iv xv yv", - "shape (nvert)", "reader urword", "optional false"], - ["block vertices", "name iv", "type integer", "in_record true", - "tagged false", "reader urword", "optional false", - "numeric_index true"], - ["block vertices", "name xv", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block vertices", "name yv", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block cell2d", "name cell2d", - "type recarray icell2d xc yc ncvert icvert", "shape (ncpl)", - "reader urword", "optional false"], - ["block cell2d", "name icell2d", "type integer", - "in_record true", "tagged false", "reader urword", - "optional false", "numeric_index true"], - ["block cell2d", "name xc", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block cell2d", "name yc", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block cell2d", "name ncvert", "type integer", "in_record true", - "tagged false", "reader urword", "optional false"], - ["block cell2d", "name icvert", "type integer", "shape (ncvert)", - "in_record true", "tagged false", "reader urword", - "optional false", "numeric_index true"]] + [ + "header", + ], + [ + "block options", + "name length_units", + "type string", + "reader urword", + "optional true", + ], + [ + "block options", + "name nogrb", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name xorigin", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name yorigin", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name angrot", + "type double precision", + "reader urword", + "optional true", + ], + [ + "block options", + "name export_array_ascii", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_ascii", + ], + [ + "block options", + "name export_array_netcdf", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_nc", + "extended true", + ], + [ + "block options", + "name ncf_filerecord", + "type record ncf6 filein ncf6_filename", + "reader urword", + "tagged true", + "optional true", + "construct_package ncf", + "construct_data packagedata", + "parameter_name packagedata", + ], + [ + "block options", + "name ncf6", + "type keyword", + "in_record true", + "reader urword", + "tagged true", + "optional false", + "extended true", + ], + [ + "block options", + "name filein", + "type keyword", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name ncf6_filename", + "type string", + "preserve_case true", + "in_record true", + "reader urword", + "optional false", + "tagged false", + "extended true", + ], + [ + "block dimensions", + "name nlay", + "type integer", + "reader urword", + "optional false", + ], + [ + "block dimensions", + "name ncpl", + "type integer", + "reader urword", + "optional false", + ], + [ + "block dimensions", + "name nvert", + "type integer", + "reader urword", + "optional false", + ], + [ + "block griddata", + "name top", + "type double precision", + "shape (ncpl)", + "reader readarray", + "netcdf true", + ], + [ + "block griddata", + "name botm", + "type double precision", + "shape (ncpl, nlay)", + "reader readarray", + "layered true", + "netcdf true", + ], + [ + "block griddata", + "name idomain", + "type integer", + "shape (ncpl, nlay)", + "reader readarray", + "layered true", + "netcdf true", + "optional true", + ], + [ + "block vertices", + "name vertices", + "type recarray iv xv yv", + "shape (nvert)", + "reader urword", + "optional false", + ], + [ + "block vertices", + "name iv", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + [ + "block vertices", + "name xv", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block vertices", + "name yv", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name cell2d", + "type recarray icell2d xc yc ncvert icvert", + "shape (ncpl)", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name icell2d", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + [ + "block cell2d", + "name xc", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name yc", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name ncvert", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block cell2d", + "name icvert", + "type integer", + "shape (ncvert)", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + ] - def __init__(self, model, loading_package=False, length_units=None, - nogrb=None, xorigin=None, yorigin=None, angrot=None, - export_array_ascii=None, export_array_netcdf=None, - packagedata=None, nlay=None, ncpl=None, nvert=None, top=None, - botm=None, idomain=None, vertices=None, cell2d=None, - filename=None, pname=None, **kwargs): - super().__init__(model, "disv", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + length_units=None, + nogrb=None, + xorigin=None, + yorigin=None, + angrot=None, + export_array_ascii=None, + export_array_netcdf=None, + packagedata=None, + nlay=None, + ncpl=None, + nvert=None, + top=None, + botm=None, + idomain=None, + vertices=None, + cell2d=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "disv", filename, pname, loading_package, **kwargs) # set up variables self.length_units = self.build_mfdata("length_units", length_units) @@ -218,15 +402,16 @@ def __init__(self, model, loading_package=False, length_units=None, self.xorigin = self.build_mfdata("xorigin", xorigin) self.yorigin = self.build_mfdata("yorigin", yorigin) self.angrot = self.build_mfdata("angrot", angrot) - self.export_array_ascii = self.build_mfdata("export_array_ascii", - export_array_ascii) - self.export_array_netcdf = self.build_mfdata("export_array_netcdf", - export_array_netcdf) - self._ncf_filerecord = self.build_mfdata("ncf_filerecord", - None) - self._ncf_package = self.build_child_package("ncf", packagedata, - "packagedata", - self._ncf_filerecord) + self.export_array_ascii = self.build_mfdata( + "export_array_ascii", export_array_ascii + ) + self.export_array_netcdf = self.build_mfdata( + "export_array_netcdf", export_array_netcdf + ) + self._ncf_filerecord = self.build_mfdata("ncf_filerecord", None) + self._ncf_package = self.build_child_package( + "ncf", packagedata, "packagedata", self._ncf_filerecord + ) self.nlay = self.build_mfdata("nlay", nlay) self.ncpl = self.build_mfdata("ncpl", ncpl) self.nvert = self.build_mfdata("nvert", nvert) diff --git a/flopy/mf6/modflow/mfgweesl.py b/flopy/mf6/modflow/mfgweesl.py index a62bbf16f9..56fad747e5 100644 --- a/flopy/mf6/modflow/mfgweesl.py +++ b/flopy/mf6/modflow/mfgweesl.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -98,87 +98,231 @@ class ModflowGweesl(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - auxiliary = ListTemplateGenerator(('gwe6', 'esl', 'options', - 'auxiliary')) - ts_filerecord = ListTemplateGenerator(('gwe6', 'esl', 'options', - 'ts_filerecord')) - obs_filerecord = ListTemplateGenerator(('gwe6', 'esl', 'options', - 'obs_filerecord')) - stress_period_data = ListTemplateGenerator(('gwe6', 'esl', 'period', - 'stress_period_data')) + + auxiliary = ListTemplateGenerator(("gwe6", "esl", "options", "auxiliary")) + ts_filerecord = ListTemplateGenerator(("gwe6", "esl", "options", "ts_filerecord")) + obs_filerecord = ListTemplateGenerator(("gwe6", "esl", "options", "obs_filerecord")) + stress_period_data = ListTemplateGenerator( + ("gwe6", "esl", "period", "stress_period_data") + ) package_abbr = "gweesl" _package_type = "esl" dfn_file_name = "gwe-esl.dfn" dfn = [ - ["header", ], - ["block options", "name auxiliary", "type string", - "shape (naux)", "reader urword", "optional true"], - ["block options", "name auxmultname", "type string", "shape", - "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_flows", "type keyword", - "reader urword", "optional true"], - ["block options", "name save_flows", "type keyword", - "reader urword", "optional true"], - ["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 dimensions", "name maxbound", "type integer", - "reader urword", "optional false"], - ["block period", "name iper", "type integer", - "block_variable True", "in_record true", "tagged false", "shape", - "valid", "reader urword", "optional false"], - ["block period", "name stress_period_data", + [ + "header", + ], + [ + "block options", + "name auxiliary", + "type string", + "shape (naux)", + "reader urword", + "optional true", + ], + [ + "block options", + "name auxmultname", + "type string", + "shape", + "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_flows", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name save_flows", + "type keyword", + "reader urword", + "optional true", + ], + [ + "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 dimensions", + "name maxbound", + "type integer", + "reader urword", + "optional false", + ], + [ + "block period", + "name iper", + "type integer", + "block_variable True", + "in_record true", + "tagged false", + "shape", + "valid", + "reader urword", + "optional false", + ], + [ + "block period", + "name stress_period_data", "type recarray cellid senerrate aux boundname", - "shape (maxbound)", "reader urword"], - ["block period", "name cellid", "type integer", - "shape (ncelldim)", "tagged false", "in_record true", - "reader urword"], - ["block period", "name senerrate", "type double precision", - "shape", "tagged false", "in_record true", "reader urword", - "time_series true"], - ["block period", "name aux", "type double precision", - "in_record true", "tagged false", "shape (naux)", "reader urword", - "optional true", "time_series true"], - ["block period", "name boundname", "type string", "shape", - "tagged false", "in_record true", "reader urword", - "optional true"]] + "shape (maxbound)", + "reader urword", + ], + [ + "block period", + "name cellid", + "type integer", + "shape (ncelldim)", + "tagged false", + "in_record true", + "reader urword", + ], + [ + "block period", + "name senerrate", + "type double precision", + "shape", + "tagged false", + "in_record true", + "reader urword", + "time_series true", + ], + [ + "block period", + "name aux", + "type double precision", + "in_record true", + "tagged false", + "shape (naux)", + "reader urword", + "optional true", + "time_series true", + ], + [ + "block period", + "name boundname", + "type string", + "shape", + "tagged false", + "in_record true", + "reader urword", + "optional true", + ], + ] - def __init__(self, model, loading_package=False, auxiliary=None, - auxmultname=None, boundnames=None, print_input=None, - print_flows=None, save_flows=None, timeseries=None, - observations=None, maxbound=None, stress_period_data=None, - filename=None, pname=None, **kwargs): - super().__init__(model, "esl", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + auxiliary=None, + auxmultname=None, + boundnames=None, + print_input=None, + print_flows=None, + save_flows=None, + timeseries=None, + observations=None, + maxbound=None, + stress_period_data=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "esl", filename, pname, loading_package, **kwargs) # set up variables self.auxiliary = self.build_mfdata("auxiliary", auxiliary) @@ -187,17 +331,16 @@ def __init__(self, model, loading_package=False, auxiliary=None, self.print_input = self.build_mfdata("print_input", print_input) self.print_flows = self.build_mfdata("print_flows", print_flows) self.save_flows = self.build_mfdata("save_flows", save_flows) - 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._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.maxbound = self.build_mfdata("maxbound", maxbound) - self.stress_period_data = self.build_mfdata("stress_period_data", - stress_period_data) + self.stress_period_data = self.build_mfdata( + "stress_period_data", stress_period_data + ) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgweest.py b/flopy/mf6/modflow/mfgweest.py index d01c53255d..ce7b242cad 100644 --- a/flopy/mf6/modflow/mfgweest.py +++ b/flopy/mf6/modflow/mfgweest.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ArrayTemplateGenerator @@ -21,10 +21,18 @@ class ModflowGweest(mfpackage.MFPackage): * save_flows (boolean) keyword to indicate that EST flow terms will be written to the file specified with "BUDGET FILEOUT" in Output Control. - zero_order_decay : boolean - * zero_order_decay (boolean) is a text keyword to indicate that zero- - order decay will occur. Use of this keyword requires that DECAY is - specified in the GRIDDATA block. + zero_order_decay_water : boolean + * zero_order_decay_water (boolean) is a text keyword to indicate that + zero-order decay will occur in the aqueous phase. That is, decay + occurs in the water and is a rate per volume of water only, not per + volume of aquifer (i.e., grid cell). Use of this keyword requires + that DECAY_WATER is specified in the GRIDDATA block. + zero_order_decay_solid : boolean + * zero_order_decay_solid (boolean) is a text keyword to indicate that + zero-order decay will occur in the solid phase. That is, decay occurs + in the solid and is a rate per mass (not volume) of solid only. Use + of this keyword requires that DECAY_SOLID is specified in the + GRIDDATA block. density_water : double * density_water (double) density of water used by calculations related to heat storage and conduction. This value is set to 1,000 kg/m3 if @@ -57,13 +65,21 @@ class ModflowGweest(mfpackage.MFPackage): mobile domain pore volume per mobile domain volume. The GWE model does not support the concept of an immobile domain in the context of heat transport. - decay : [double] - * decay (double) is the rate coefficient for zero-order decay for the - aqueous phase of the mobile domain. A negative value indicates heat - (energy) production. The dimensions of decay for zero-order decay is - energy per length cubed per time. Zero-order decay will have no - effect on simulation results unless zero-order decay is specified in - the options block. + decay_water : [double] + * decay_water (double) is the rate coefficient for zero-order decay for + the aqueous phase of the mobile domain. A negative value indicates + heat (energy) production. The dimensions of zero-order decay in the + aqueous phase are energy per length cubed (volume of water) per time. + Zero-order decay in the aqueous phase will have no effect on + simulation results unless ZERO_ORDER_DECAY_WATER is specified in the + options block. + decay_solid : [double] + * decay_solid (double) is the rate coefficient for zero-order decay for + the solid phase. A negative value indicates heat (energy) production. + The dimensions of zero-order decay in the solid phase are energy per + mass of solid per time. Zero-order decay in the solid phase will have + no effect on simulation results unless ZERO_ORDER_DECAY_SOLID is + specified in the options block. heat_capacity_solid : [double] * heat_capacity_solid (double) is the mass-based heat capacity of dry solids (aquifer material). For example, units of J/kg/C may be used @@ -79,70 +95,161 @@ class ModflowGweest(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - porosity = ArrayTemplateGenerator(('gwe6', 'est', 'griddata', - 'porosity')) - decay = ArrayTemplateGenerator(('gwe6', 'est', 'griddata', 'decay')) - heat_capacity_solid = ArrayTemplateGenerator(('gwe6', 'est', - 'griddata', - 'heat_capacity_solid')) - density_solid = ArrayTemplateGenerator(('gwe6', 'est', 'griddata', - 'density_solid')) + + porosity = ArrayTemplateGenerator(("gwe6", "est", "griddata", "porosity")) + decay_water = ArrayTemplateGenerator(("gwe6", "est", "griddata", "decay_water")) + decay_solid = ArrayTemplateGenerator(("gwe6", "est", "griddata", "decay_solid")) + heat_capacity_solid = ArrayTemplateGenerator( + ("gwe6", "est", "griddata", "heat_capacity_solid") + ) + density_solid = ArrayTemplateGenerator(("gwe6", "est", "griddata", "density_solid")) package_abbr = "gweest" _package_type = "est" dfn_file_name = "gwe-est.dfn" dfn = [ - ["header", ], - ["block options", "name save_flows", "type keyword", - "reader urword", "optional true"], - ["block options", "name zero_order_decay", "type keyword", - "reader urword", "optional true"], - ["block options", "name density_water", "type double precision", - "reader urword", "optional true", "default_value 1000.0", - "mf6internal rhow"], - ["block options", "name heat_capacity_water", - "type double precision", "reader urword", "optional true", - "default_value 4184.0", "mf6internal cpw"], - ["block options", "name latent_heat_vaporization", - "type double precision", "reader urword", "optional true", - "default_value 2453500.0", "mf6internal latheatvap"], - ["block griddata", "name porosity", "type double precision", - "shape (nodes)", "reader readarray", "layered true"], - ["block griddata", "name decay", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "optional true"], - ["block griddata", "name heat_capacity_solid", - "type double precision", "shape (nodes)", "reader readarray", - "layered true", "mf6internal cps"], - ["block griddata", "name density_solid", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "mf6internal rhos"]] + [ + "header", + ], + [ + "block options", + "name save_flows", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name zero_order_decay_water", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name zero_order_decay_solid", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name density_water", + "type double precision", + "reader urword", + "optional true", + "default_value 1000.0", + "mf6internal rhow", + ], + [ + "block options", + "name heat_capacity_water", + "type double precision", + "reader urword", + "optional true", + "default_value 4184.0", + "mf6internal cpw", + ], + [ + "block options", + "name latent_heat_vaporization", + "type double precision", + "reader urword", + "optional true", + "default_value 2453500.0", + "mf6internal latheatvap", + ], + [ + "block griddata", + "name porosity", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + ], + [ + "block griddata", + "name decay_water", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "optional true", + ], + [ + "block griddata", + "name decay_solid", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "optional true", + ], + [ + "block griddata", + "name heat_capacity_solid", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "mf6internal cps", + ], + [ + "block griddata", + "name density_solid", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "mf6internal rhos", + ], + ] - def __init__(self, model, loading_package=False, save_flows=None, - zero_order_decay=None, density_water=1000.0, - heat_capacity_water=4184.0, - latent_heat_vaporization=2453500.0, porosity=None, decay=None, - heat_capacity_solid=None, density_solid=None, filename=None, - pname=None, **kwargs): - super().__init__(model, "est", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + save_flows=None, + zero_order_decay_water=None, + zero_order_decay_solid=None, + density_water=1000.0, + heat_capacity_water=4184.0, + latent_heat_vaporization=2453500.0, + porosity=None, + decay_water=None, + decay_solid=None, + heat_capacity_solid=None, + density_solid=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "est", filename, pname, loading_package, **kwargs) # set up variables self.save_flows = self.build_mfdata("save_flows", save_flows) - self.zero_order_decay = self.build_mfdata("zero_order_decay", - zero_order_decay) + self.zero_order_decay_water = self.build_mfdata( + "zero_order_decay_water", zero_order_decay_water + ) + self.zero_order_decay_solid = self.build_mfdata( + "zero_order_decay_solid", zero_order_decay_solid + ) self.density_water = self.build_mfdata("density_water", density_water) - self.heat_capacity_water = self.build_mfdata("heat_capacity_water", - heat_capacity_water) + self.heat_capacity_water = self.build_mfdata( + "heat_capacity_water", heat_capacity_water + ) self.latent_heat_vaporization = self.build_mfdata( - "latent_heat_vaporization", latent_heat_vaporization) + "latent_heat_vaporization", latent_heat_vaporization + ) self.porosity = self.build_mfdata("porosity", porosity) - self.decay = self.build_mfdata("decay", decay) - self.heat_capacity_solid = self.build_mfdata("heat_capacity_solid", - heat_capacity_solid) + self.decay_water = self.build_mfdata("decay_water", decay_water) + self.decay_solid = self.build_mfdata("decay_solid", decay_solid) + self.heat_capacity_solid = self.build_mfdata( + "heat_capacity_solid", heat_capacity_solid + ) self.density_solid = self.build_mfdata("density_solid", density_solid) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwefmi.py b/flopy/mf6/modflow/mfgwefmi.py index e244f6d637..bae91e851e 100644 --- a/flopy/mf6/modflow/mfgwefmi.py +++ b/flopy/mf6/modflow/mfgwefmi.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -32,12 +32,14 @@ class ModflowGwefmi(mfpackage.MFPackage): balance. If these terms are not relatively small, the flow model should be rerun with stricter convergence tolerances. packagedata : [flowtype, fname] - * flowtype (string) is the word GWFBUDGET, GWFHEAD, GWFMOVER or the - name of an advanced GWF stress package. If GWFBUDGET is specified, - then the corresponding file must be a budget file from a previous GWF - Model run. If an advanced GWF stress package name appears then the - corresponding file must be the budget file saved by a LAK, SFR, MAW - or UZF Package. + * flowtype (string) is the word GWFBUDGET, GWFHEAD, GWFGRID, GWFMOVER + or the name of an advanced GWF stress package from a previous model + run. If GWFBUDGET is specified, then the corresponding file must be a + budget file. If GWFHEAD is specified, the file must be a head file. + If GWFGRID is specified, the file must be a binary grid file. If + GWFMOVER is specified, the file must be a mover file. If an advanced + GWF stress package name appears then the corresponding file must be + the budget file saved by a LAK, SFR, MAW or UZF Package. * fname (string) is the name of the file containing flows. The path to the file should be included if the file is not located in the folder where the program was run. @@ -47,43 +49,87 @@ class ModflowGwefmi(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - packagedata = ListTemplateGenerator(('gwe6', 'fmi', 'packagedata', - 'packagedata')) + + packagedata = ListTemplateGenerator(("gwe6", "fmi", "packagedata", "packagedata")) package_abbr = "gwefmi" _package_type = "fmi" dfn_file_name = "gwe-fmi.dfn" dfn = [ - ["header", ], - ["block options", "name save_flows", "type keyword", - "reader urword", "optional true"], - ["block options", "name flow_imbalance_correction", - "type keyword", "reader urword", "optional true"], - ["block packagedata", "name packagedata", - "type recarray flowtype filein fname", "reader urword", - "optional false"], - ["block packagedata", "name flowtype", "in_record true", - "type string", "tagged false", "reader urword"], - ["block packagedata", "name filein", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block packagedata", "name fname", "in_record true", - "type string", "preserve_case true", "tagged false", - "reader urword"]] + [ + "header", + ], + [ + "block options", + "name save_flows", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block options", + "name flow_imbalance_correction", + "type keyword", + "reader urword", + "optional true", + ], + [ + "block packagedata", + "name packagedata", + "type recarray flowtype filein fname", + "reader urword", + "optional false", + ], + [ + "block packagedata", + "name flowtype", + "in_record true", + "type string", + "tagged false", + "reader urword", + ], + [ + "block packagedata", + "name filein", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block packagedata", + "name fname", + "in_record true", + "type string", + "preserve_case true", + "tagged false", + "reader urword", + ], + ] - def __init__(self, model, loading_package=False, save_flows=None, - flow_imbalance_correction=None, packagedata=None, - filename=None, pname=None, **kwargs): - super().__init__(model, "fmi", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + save_flows=None, + flow_imbalance_correction=None, + packagedata=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "fmi", filename, pname, loading_package, **kwargs) # set up variables self.save_flows = self.build_mfdata("save_flows", save_flows) self.flow_imbalance_correction = self.build_mfdata( - "flow_imbalance_correction", flow_imbalance_correction) + "flow_imbalance_correction", flow_imbalance_correction + ) self.packagedata = self.build_mfdata("packagedata", packagedata) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwegwe.py b/flopy/mf6/modflow/mfgwegwe.py index 766d2a5fb9..dded5747a6 100644 --- a/flopy/mf6/modflow/mfgwegwe.py +++ b/flopy/mf6/modflow/mfgwegwe.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -148,109 +148,308 @@ class ModflowGwegwe(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - auxiliary = ListTemplateGenerator(('gwegwe', 'options', 'auxiliary')) - mve_filerecord = ListTemplateGenerator(('gwegwe', 'options', - 'mve_filerecord')) - obs_filerecord = ListTemplateGenerator(('gwegwe', 'options', - 'obs_filerecord')) - exchangedata = ListTemplateGenerator(('gwegwe', 'exchangedata', - 'exchangedata')) + + auxiliary = ListTemplateGenerator(("gwegwe", "options", "auxiliary")) + mve_filerecord = ListTemplateGenerator(("gwegwe", "options", "mve_filerecord")) + obs_filerecord = ListTemplateGenerator(("gwegwe", "options", "obs_filerecord")) + exchangedata = ListTemplateGenerator(("gwegwe", "exchangedata", "exchangedata")) package_abbr = "gwegwe" _package_type = "gwegwe" dfn_file_name = "exg-gwegwe.dfn" dfn = [ - ["header", - "multi-package", ], - ["block options", "name gwfmodelname1", "type string", - "reader urword", "optional false"], - ["block options", "name gwfmodelname2", "type string", - "reader urword", "optional false"], - ["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", "mf6internal iprpak"], - ["block options", "name print_flows", "type keyword", - "reader urword", "optional true", "mf6internal iprflow"], - ["block options", "name save_flows", "type keyword", - "reader urword", "optional true", "mf6internal ipakcb"], - ["block options", "name adv_scheme", "type string", - "valid upstream central tvd", "reader urword", "optional true"], - ["block options", "name cnd_xt3d_off", "type keyword", "shape", - "reader urword", "optional true"], - ["block options", "name cnd_xt3d_rhs", "type keyword", "shape", - "reader urword", "optional true"], - ["block options", "name filein", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name mve_filerecord", - "type record mve6 filein mve6_filename", "shape", "reader urword", - "tagged true", "optional true", "construct_package mve", - "construct_data perioddata", "parameter_name perioddata"], - ["block options", "name mve6", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name mve6_filename", "type string", - "preserve_case true", "in_record true", "tagged false", - "reader urword", "optional 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 dev_interfacemodel_on", "type keyword", - "reader urword", "optional true", "mf6internal dev_ifmod_on"], - ["block dimensions", "name nexg", "type integer", - "reader urword", "optional false"], - ["block exchangedata", "name exchangedata", + [ + "header", + "multi-package", + ], + [ + "block options", + "name gwfmodelname1", + "type string", + "reader urword", + "optional false", + ], + [ + "block options", + "name gwfmodelname2", + "type string", + "reader urword", + "optional false", + ], + [ + "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", + "mf6internal iprpak", + ], + [ + "block options", + "name print_flows", + "type keyword", + "reader urword", + "optional true", + "mf6internal iprflow", + ], + [ + "block options", + "name save_flows", + "type keyword", + "reader urword", + "optional true", + "mf6internal ipakcb", + ], + [ + "block options", + "name adv_scheme", + "type string", + "valid upstream central tvd", + "reader urword", + "optional true", + ], + [ + "block options", + "name cnd_xt3d_off", + "type keyword", + "shape", + "reader urword", + "optional true", + ], + [ + "block options", + "name cnd_xt3d_rhs", + "type keyword", + "shape", + "reader urword", + "optional true", + ], + [ + "block options", + "name filein", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name mve_filerecord", + "type record mve6 filein mve6_filename", + "shape", + "reader urword", + "tagged true", + "optional true", + "construct_package mve", + "construct_data perioddata", + "parameter_name perioddata", + ], + [ + "block options", + "name mve6", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name mve6_filename", + "type string", + "preserve_case true", + "in_record true", + "tagged false", + "reader urword", + "optional 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 dev_interfacemodel_on", + "type keyword", + "reader urword", + "optional true", + "mf6internal dev_ifmod_on", + ], + [ + "block dimensions", + "name nexg", + "type integer", + "reader urword", + "optional false", + ], + [ + "block exchangedata", + "name exchangedata", "type recarray cellidm1 cellidm2 ihc cl1 cl2 hwva aux boundname", - "shape (nexg)", "reader urword", "optional false"], - ["block exchangedata", "name cellidm1", "type integer", - "in_record true", "tagged false", "reader urword", - "optional false", "numeric_index true"], - ["block exchangedata", "name cellidm2", "type integer", - "in_record true", "tagged false", "reader urword", - "optional false", "numeric_index true"], - ["block exchangedata", "name ihc", "type integer", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block exchangedata", "name cl1", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block exchangedata", "name cl2", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block exchangedata", "name hwva", "type double precision", - "in_record true", "tagged false", "reader urword", - "optional false"], - ["block exchangedata", "name aux", "type double precision", - "in_record true", "tagged false", "shape (naux)", "reader urword", - "optional true", "mf6internal auxvar"], - ["block exchangedata", "name boundname", "type string", "shape", - "tagged false", "in_record true", "reader urword", - "optional true"]] + "shape (nexg)", + "reader urword", + "optional false", + ], + [ + "block exchangedata", + "name cellidm1", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + [ + "block exchangedata", + "name cellidm2", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + "numeric_index true", + ], + [ + "block exchangedata", + "name ihc", + "type integer", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block exchangedata", + "name cl1", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block exchangedata", + "name cl2", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block exchangedata", + "name hwva", + "type double precision", + "in_record true", + "tagged false", + "reader urword", + "optional false", + ], + [ + "block exchangedata", + "name aux", + "type double precision", + "in_record true", + "tagged false", + "shape (naux)", + "reader urword", + "optional true", + "mf6internal auxvar", + ], + [ + "block exchangedata", + "name boundname", + "type string", + "shape", + "tagged false", + "in_record true", + "reader urword", + "optional true", + ], + ] - def __init__(self, simulation, loading_package=False, exgtype="GWE6-GWE6", - exgmnamea=None, exgmnameb=None, gwfmodelname1=None, - gwfmodelname2=None, auxiliary=None, boundnames=None, - print_input=None, print_flows=None, save_flows=None, - adv_scheme=None, cnd_xt3d_off=None, cnd_xt3d_rhs=None, - filein=None, perioddata=None, observations=None, - dev_interfacemodel_on=None, nexg=None, exchangedata=None, - filename=None, pname=None, **kwargs): - super().__init__(simulation, "gwegwe", filename, pname, - loading_package, **kwargs) + def __init__( + self, + simulation, + loading_package=False, + exgtype="GWE6-GWE6", + exgmnamea=None, + exgmnameb=None, + gwfmodelname1=None, + gwfmodelname2=None, + auxiliary=None, + boundnames=None, + print_input=None, + print_flows=None, + save_flows=None, + adv_scheme=None, + cnd_xt3d_off=None, + cnd_xt3d_rhs=None, + filein=None, + perioddata=None, + observations=None, + dev_interfacemodel_on=None, + nexg=None, + exchangedata=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__( + simulation, "gwegwe", filename, pname, loading_package, **kwargs + ) # set up variables self.exgtype = exgtype @@ -272,18 +471,17 @@ def __init__(self, simulation, loading_package=False, exgtype="GWE6-GWE6", self.cnd_xt3d_off = self.build_mfdata("cnd_xt3d_off", cnd_xt3d_off) self.cnd_xt3d_rhs = self.build_mfdata("cnd_xt3d_rhs", cnd_xt3d_rhs) self.filein = self.build_mfdata("filein", filein) - self._mve_filerecord = self.build_mfdata("mve_filerecord", - None) - self._mve_package = self.build_child_package("mve", perioddata, - "perioddata", - self._mve_filerecord) - self._obs_filerecord = self.build_mfdata("obs_filerecord", - None) - self._obs_package = self.build_child_package("obs", observations, - "continuous", - self._obs_filerecord) - self.dev_interfacemodel_on = self.build_mfdata("dev_interfacemodel_on", - dev_interfacemodel_on) + self._mve_filerecord = self.build_mfdata("mve_filerecord", None) + self._mve_package = self.build_child_package( + "mve", perioddata, "perioddata", self._mve_filerecord + ) + self._obs_filerecord = self.build_mfdata("obs_filerecord", None) + self._obs_package = self.build_child_package( + "obs", observations, "continuous", self._obs_filerecord + ) + self.dev_interfacemodel_on = self.build_mfdata( + "dev_interfacemodel_on", dev_interfacemodel_on + ) self.nexg = self.build_mfdata("nexg", nexg) self.exchangedata = self.build_mfdata("exchangedata", exchangedata) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgweic.py b/flopy/mf6/modflow/mfgweic.py index 48c9cc88a7..6f9ece1e1b 100644 --- a/flopy/mf6/modflow/mfgweic.py +++ b/flopy/mf6/modflow/mfgweic.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ArrayTemplateGenerator @@ -34,36 +34,68 @@ class ModflowGweic(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - strt = ArrayTemplateGenerator(('gwe6', 'ic', 'griddata', 'strt')) + + strt = ArrayTemplateGenerator(("gwe6", "ic", "griddata", "strt")) package_abbr = "gweic" _package_type = "ic" dfn_file_name = "gwe-ic.dfn" dfn = [ - ["header", ], - ["block options", "name export_array_ascii", "type keyword", - "reader urword", "optional true", "mf6internal export_ascii"], - ["block options", "name export_array_netcdf", "type keyword", - "reader urword", "optional true", "mf6internal export_nc", - "extended true"], - ["block griddata", "name strt", "type double precision", - "shape (nodes)", "reader readarray", "layered true", - "netcdf true", "default_value 0.0"]] + [ + "header", + ], + [ + "block options", + "name export_array_ascii", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_ascii", + ], + [ + "block options", + "name export_array_netcdf", + "type keyword", + "reader urword", + "optional true", + "mf6internal export_nc", + "extended true", + ], + [ + "block griddata", + "name strt", + "type double precision", + "shape (nodes)", + "reader readarray", + "layered true", + "netcdf true", + "default_value 0.0", + ], + ] - def __init__(self, model, loading_package=False, export_array_ascii=None, - export_array_netcdf=None, strt=0.0, filename=None, pname=None, - **kwargs): - super().__init__(model, "ic", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + export_array_ascii=None, + export_array_netcdf=None, + strt=0.0, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "ic", filename, pname, loading_package, **kwargs) # set up variables - self.export_array_ascii = self.build_mfdata("export_array_ascii", - export_array_ascii) - self.export_array_netcdf = self.build_mfdata("export_array_netcdf", - export_array_netcdf) + self.export_array_ascii = self.build_mfdata( + "export_array_ascii", export_array_ascii + ) + self.export_array_netcdf = self.build_mfdata( + "export_array_netcdf", export_array_netcdf + ) self.strt = self.build_mfdata("strt", strt) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwelke.py b/flopy/mf6/modflow/mfgwelke.py index d2880c34d1..73d9faa7f2 100644 --- a/flopy/mf6/modflow/mfgwelke.py +++ b/flopy/mf6/modflow/mfgwelke.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -101,8 +101,9 @@ class ModflowGwelke(mfpackage.MFPackage): when writing index variables. * strt (double) real value that defines the starting temperature for the lake. - * ktf (double) is the thermal conductivity of the of the interface - between the aquifer cell and the lake. + * ktf (double) is the thermal conductivity of the material between the + aquifer cell and the lake. The thickness of the material is defined + by the variable RBTHCND. * rbthcnd (double) real value that defines the thickness of the lakebed material through which conduction occurs. Must be greater than 0. * aux (double) represents the values of the auxiliary variables for @@ -197,202 +198,526 @@ class ModflowGwelke(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - auxiliary = ListTemplateGenerator(('gwe6', 'lke', 'options', - 'auxiliary')) - temperature_filerecord = ListTemplateGenerator(('gwe6', 'lke', - 'options', - 'temperature_filerecord')) - budget_filerecord = ListTemplateGenerator(('gwe6', 'lke', 'options', - 'budget_filerecord')) - budgetcsv_filerecord = ListTemplateGenerator(('gwe6', 'lke', - 'options', - 'budgetcsv_filerecord')) - ts_filerecord = ListTemplateGenerator(('gwe6', 'lke', 'options', - 'ts_filerecord')) - obs_filerecord = ListTemplateGenerator(('gwe6', 'lke', 'options', - 'obs_filerecord')) - packagedata = ListTemplateGenerator(('gwe6', 'lke', 'packagedata', - 'packagedata')) - lakeperioddata = ListTemplateGenerator(('gwe6', 'lke', 'period', - 'lakeperioddata')) + + auxiliary = ListTemplateGenerator(("gwe6", "lke", "options", "auxiliary")) + temperature_filerecord = ListTemplateGenerator( + ("gwe6", "lke", "options", "temperature_filerecord") + ) + budget_filerecord = ListTemplateGenerator( + ("gwe6", "lke", "options", "budget_filerecord") + ) + budgetcsv_filerecord = ListTemplateGenerator( + ("gwe6", "lke", "options", "budgetcsv_filerecord") + ) + ts_filerecord = ListTemplateGenerator(("gwe6", "lke", "options", "ts_filerecord")) + obs_filerecord = ListTemplateGenerator(("gwe6", "lke", "options", "obs_filerecord")) + packagedata = ListTemplateGenerator(("gwe6", "lke", "packagedata", "packagedata")) + lakeperioddata = ListTemplateGenerator(("gwe6", "lke", "period", "lakeperioddata")) package_abbr = "gwelke" _package_type = "lke" dfn_file_name = "gwe-lke.dfn" dfn = [ - ["header", - "multi-package", ], - ["block options", "name flow_package_name", "type string", - "shape", "reader urword", "optional true"], - ["block options", "name auxiliary", "type string", - "shape (naux)", "reader urword", "optional true"], - ["block options", "name flow_package_auxiliary_name", - "type string", "shape", "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_temperature", "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 temperature_filerecord", - "type record temperature fileout tempfile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name temperature", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name tempfile", "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 budgetcsv_filerecord", - "type record budgetcsv fileout budgetcsvfile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name budgetcsv", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name budgetcsvfile", "type string", - "preserve_case true", "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 packagedata", "name packagedata", + [ + "header", + "multi-package", + ], + [ + "block options", + "name flow_package_name", + "type string", + "shape", + "reader urword", + "optional true", + ], + [ + "block options", + "name auxiliary", + "type string", + "shape (naux)", + "reader urword", + "optional true", + ], + [ + "block options", + "name flow_package_auxiliary_name", + "type string", + "shape", + "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_temperature", + "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 temperature_filerecord", + "type record temperature fileout tempfile", + "shape", + "reader urword", + "tagged true", + "optional true", + ], + [ + "block options", + "name temperature", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name tempfile", + "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 budgetcsv_filerecord", + "type record budgetcsv fileout budgetcsvfile", + "shape", + "reader urword", + "tagged true", + "optional true", + ], + [ + "block options", + "name budgetcsv", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name budgetcsvfile", + "type string", + "preserve_case true", + "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 packagedata", + "name packagedata", "type recarray lakeno strt ktf rbthcnd 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 ktf", "type double precision", - "shape", "tagged false", "in_record true", "reader urword"], - ["block packagedata", "name rbthcnd", "type double precision", - "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 period", "name iper", "type integer", - "block_variable True", "in_record true", "tagged false", "shape", - "valid", "reader urword", "optional false"], - ["block period", "name lakeperioddata", - "type recarray lakeno laksetting", "shape", "reader urword"], - ["block period", "name lakeno", "type integer", "shape", - "tagged false", "in_record true", "reader urword", - "numeric_index true"], - ["block period", "name laksetting", + "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 ktf", + "type double precision", + "shape", + "tagged false", + "in_record true", + "reader urword", + ], + [ + "block packagedata", + "name rbthcnd", + "type double precision", + "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 period", + "name iper", + "type integer", + "block_variable True", + "in_record true", + "tagged false", + "shape", + "valid", + "reader urword", + "optional false", + ], + [ + "block period", + "name lakeperioddata", + "type recarray lakeno laksetting", + "shape", + "reader urword", + ], + [ + "block period", + "name lakeno", + "type integer", + "shape", + "tagged false", + "in_record true", + "reader urword", + "numeric_index true", + ], + [ + "block period", + "name laksetting", "type keystring status temperature rainfall evaporation runoff " "ext-inflow 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 temperature", "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 ext-inflow", "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"]] + "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 temperature", + "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 ext-inflow", + "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, flow_package_name=None, - auxiliary=None, flow_package_auxiliary_name=None, - boundnames=None, print_input=None, print_temperature=None, - print_flows=None, save_flows=None, - temperature_filerecord=None, budget_filerecord=None, - budgetcsv_filerecord=None, timeseries=None, observations=None, - packagedata=None, lakeperioddata=None, filename=None, - pname=None, **kwargs): - super().__init__(model, "lke", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + flow_package_name=None, + auxiliary=None, + flow_package_auxiliary_name=None, + boundnames=None, + print_input=None, + print_temperature=None, + print_flows=None, + save_flows=None, + temperature_filerecord=None, + budget_filerecord=None, + budgetcsv_filerecord=None, + timeseries=None, + observations=None, + packagedata=None, + lakeperioddata=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "lke", filename, pname, loading_package, **kwargs) # set up variables - self.flow_package_name = self.build_mfdata("flow_package_name", - flow_package_name) + self.flow_package_name = self.build_mfdata( + "flow_package_name", flow_package_name + ) self.auxiliary = self.build_mfdata("auxiliary", auxiliary) self.flow_package_auxiliary_name = self.build_mfdata( - "flow_package_auxiliary_name", flow_package_auxiliary_name) + "flow_package_auxiliary_name", flow_package_auxiliary_name + ) self.boundnames = self.build_mfdata("boundnames", boundnames) self.print_input = self.build_mfdata("print_input", print_input) - self.print_temperature = self.build_mfdata("print_temperature", - print_temperature) + self.print_temperature = self.build_mfdata( + "print_temperature", print_temperature + ) self.print_flows = self.build_mfdata("print_flows", print_flows) self.save_flows = self.build_mfdata("save_flows", save_flows) self.temperature_filerecord = self.build_mfdata( - "temperature_filerecord", temperature_filerecord) - self.budget_filerecord = self.build_mfdata("budget_filerecord", - budget_filerecord) - self.budgetcsv_filerecord = self.build_mfdata("budgetcsv_filerecord", - budgetcsv_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) + "temperature_filerecord", temperature_filerecord + ) + self.budget_filerecord = self.build_mfdata( + "budget_filerecord", budget_filerecord + ) + self.budgetcsv_filerecord = self.build_mfdata( + "budgetcsv_filerecord", budgetcsv_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.packagedata = self.build_mfdata("packagedata", packagedata) - self.lakeperioddata = self.build_mfdata("lakeperioddata", - lakeperioddata) + self.lakeperioddata = self.build_mfdata("lakeperioddata", lakeperioddata) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwemve.py b/flopy/mf6/modflow/mfgwemve.py index 0e78e4c594..1b7dc1e7a8 100644 --- a/flopy/mf6/modflow/mfgwemve.py +++ b/flopy/mf6/modflow/mfgwemve.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -45,64 +45,145 @@ class ModflowGwemve(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - budget_filerecord = ListTemplateGenerator(('gwe6', 'mve', 'options', - 'budget_filerecord')) - budgetcsv_filerecord = ListTemplateGenerator(('gwe6', 'mve', - 'options', - 'budgetcsv_filerecord')) + + budget_filerecord = ListTemplateGenerator( + ("gwe6", "mve", "options", "budget_filerecord") + ) + budgetcsv_filerecord = ListTemplateGenerator( + ("gwe6", "mve", "options", "budgetcsv_filerecord") + ) package_abbr = "gwemve" _package_type = "mve" dfn_file_name = "gwe-mve.dfn" dfn = [ - ["header", ], - ["block options", "name print_input", "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 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 budgetcsv_filerecord", - "type record budgetcsv fileout budgetcsvfile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name budgetcsv", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name budgetcsvfile", "type string", - "preserve_case true", "shape", "in_record true", "reader urword", - "tagged false", "optional false"]] + [ + "header", + ], + [ + "block options", + "name print_input", + "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 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 budgetcsv_filerecord", + "type record budgetcsv fileout budgetcsvfile", + "shape", + "reader urword", + "tagged true", + "optional true", + ], + [ + "block options", + "name budgetcsv", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name budgetcsvfile", + "type string", + "preserve_case true", + "shape", + "in_record true", + "reader urword", + "tagged false", + "optional false", + ], + ] - def __init__(self, parent_model_or_package, loading_package=False, - print_input=None, print_flows=None, save_flows=None, - budget_filerecord=None, budgetcsv_filerecord=None, - filename=None, pname=None, **kwargs): - super().__init__(parent_model_or_package, "mve", filename, pname, - loading_package, **kwargs) + def __init__( + self, + parent_model_or_package, + loading_package=False, + print_input=None, + print_flows=None, + save_flows=None, + budget_filerecord=None, + budgetcsv_filerecord=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__( + parent_model_or_package, "mve", filename, pname, loading_package, **kwargs + ) # set up variables self.print_input = self.build_mfdata("print_input", print_input) self.print_flows = self.build_mfdata("print_flows", print_flows) self.save_flows = self.build_mfdata("save_flows", save_flows) - self.budget_filerecord = self.build_mfdata("budget_filerecord", - budget_filerecord) - self.budgetcsv_filerecord = self.build_mfdata("budgetcsv_filerecord", - budgetcsv_filerecord) + self.budget_filerecord = self.build_mfdata( + "budget_filerecord", budget_filerecord + ) + self.budgetcsv_filerecord = self.build_mfdata( + "budgetcsv_filerecord", budgetcsv_filerecord + ) self._init_complete = True @@ -120,28 +201,51 @@ class GwemvePackages(mfpackage.MFChildPackages): Adds a new ModflowGwemve package to the container. See ModflowGwemve init documentation for definition of parameters. """ + package_abbr = "gwemvepackages" - def initialize(self, print_input=None, print_flows=None, save_flows=None, - budget_filerecord=None, budgetcsv_filerecord=None, - filename=None, pname=None): - new_package = ModflowGwemve(self._cpparent, print_input=print_input, - print_flows=print_flows, - save_flows=save_flows, - budget_filerecord=budget_filerecord, - budgetcsv_filerecord=budgetcsv_filerecord, - filename=filename, pname=pname, - child_builder_call=True) + def initialize( + self, + print_input=None, + print_flows=None, + save_flows=None, + budget_filerecord=None, + budgetcsv_filerecord=None, + filename=None, + pname=None, + ): + new_package = ModflowGwemve( + self._cpparent, + print_input=print_input, + print_flows=print_flows, + save_flows=save_flows, + budget_filerecord=budget_filerecord, + budgetcsv_filerecord=budgetcsv_filerecord, + filename=filename, + pname=pname, + child_builder_call=True, + ) self.init_package(new_package, filename) - def append_package(self, print_input=None, print_flows=None, - save_flows=None, budget_filerecord=None, - budgetcsv_filerecord=None, filename=None, pname=None): - new_package = ModflowGwemve(self._cpparent, print_input=print_input, - print_flows=print_flows, - save_flows=save_flows, - budget_filerecord=budget_filerecord, - budgetcsv_filerecord=budgetcsv_filerecord, - filename=filename, pname=pname, - child_builder_call=True) + def append_package( + self, + print_input=None, + print_flows=None, + save_flows=None, + budget_filerecord=None, + budgetcsv_filerecord=None, + filename=None, + pname=None, + ): + new_package = ModflowGwemve( + self._cpparent, + print_input=print_input, + print_flows=print_flows, + save_flows=save_flows, + budget_filerecord=budget_filerecord, + budgetcsv_filerecord=budgetcsv_filerecord, + filename=filename, + pname=pname, + child_builder_call=True, + ) self._append_package(new_package, filename) diff --git a/flopy/mf6/modflow/mfgwemwe.py b/flopy/mf6/modflow/mfgwemwe.py index e3bbd3cc9e..512caa77fb 100644 --- a/flopy/mf6/modflow/mfgwemwe.py +++ b/flopy/mf6/modflow/mfgwemwe.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -101,8 +101,9 @@ class ModflowGwemwe(mfpackage.MFPackage): when writing index variables. * strt (double) real value that defines the starting temperature for the well. - * ktf (double) is the thermal conductivity of the interface between the - aquifer cell and the feature. + * ktf (double) is the thermal conductivity of the material between the + aquifer cell and the feature. The thickness of the material is + defined by the variable FTHK. * fthk (double) real value that defines the thickness of the material through which conduction occurs. Must be greater than 0. * aux (double) represents the values of the auxiliary variables for @@ -153,11 +154,12 @@ class ModflowGwemwe(mfpackage.MFPackage): value. rate : [string] * rate (string) real or character value that defines the - injection temperature :math:`(e.g., ^{\\circ}C or - ^{\\circ}F)` for the well. 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. + injection temperature + :math:`(e.g.,\\:^{\\circ}C\\:or\\:^{\\circ}F)` for the well. + 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 @@ -175,191 +177,495 @@ class ModflowGwemwe(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - auxiliary = ListTemplateGenerator(('gwe6', 'mwe', 'options', - 'auxiliary')) - temperature_filerecord = ListTemplateGenerator(('gwe6', 'mwe', - 'options', - 'temperature_filerecord')) - budget_filerecord = ListTemplateGenerator(('gwe6', 'mwe', 'options', - 'budget_filerecord')) - budgetcsv_filerecord = ListTemplateGenerator(('gwe6', 'mwe', - 'options', - 'budgetcsv_filerecord')) - ts_filerecord = ListTemplateGenerator(('gwe6', 'mwe', 'options', - 'ts_filerecord')) - obs_filerecord = ListTemplateGenerator(('gwe6', 'mwe', 'options', - 'obs_filerecord')) - packagedata = ListTemplateGenerator(('gwe6', 'mwe', 'packagedata', - 'packagedata')) - mweperioddata = ListTemplateGenerator(('gwe6', 'mwe', 'period', - 'mweperioddata')) + + auxiliary = ListTemplateGenerator(("gwe6", "mwe", "options", "auxiliary")) + temperature_filerecord = ListTemplateGenerator( + ("gwe6", "mwe", "options", "temperature_filerecord") + ) + budget_filerecord = ListTemplateGenerator( + ("gwe6", "mwe", "options", "budget_filerecord") + ) + budgetcsv_filerecord = ListTemplateGenerator( + ("gwe6", "mwe", "options", "budgetcsv_filerecord") + ) + ts_filerecord = ListTemplateGenerator(("gwe6", "mwe", "options", "ts_filerecord")) + obs_filerecord = ListTemplateGenerator(("gwe6", "mwe", "options", "obs_filerecord")) + packagedata = ListTemplateGenerator(("gwe6", "mwe", "packagedata", "packagedata")) + mweperioddata = ListTemplateGenerator(("gwe6", "mwe", "period", "mweperioddata")) package_abbr = "gwemwe" _package_type = "mwe" dfn_file_name = "gwe-mwe.dfn" dfn = [ - ["header", - "multi-package", ], - ["block options", "name flow_package_name", "type string", - "shape", "reader urword", "optional true"], - ["block options", "name auxiliary", "type string", - "shape (naux)", "reader urword", "optional true"], - ["block options", "name flow_package_auxiliary_name", - "type string", "shape", "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_temperature", "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 temperature_filerecord", - "type record temperature fileout tempfile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name temperature", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name tempfile", "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 budgetcsv_filerecord", - "type record budgetcsv fileout budgetcsvfile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name budgetcsv", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name budgetcsvfile", "type string", - "preserve_case true", "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 packagedata", "name packagedata", + [ + "header", + "multi-package", + ], + [ + "block options", + "name flow_package_name", + "type string", + "shape", + "reader urword", + "optional true", + ], + [ + "block options", + "name auxiliary", + "type string", + "shape (naux)", + "reader urword", + "optional true", + ], + [ + "block options", + "name flow_package_auxiliary_name", + "type string", + "shape", + "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_temperature", + "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 temperature_filerecord", + "type record temperature fileout tempfile", + "shape", + "reader urword", + "tagged true", + "optional true", + ], + [ + "block options", + "name temperature", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name tempfile", + "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 budgetcsv_filerecord", + "type record budgetcsv fileout budgetcsvfile", + "shape", + "reader urword", + "tagged true", + "optional true", + ], + [ + "block options", + "name budgetcsv", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name budgetcsvfile", + "type string", + "preserve_case true", + "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 packagedata", + "name packagedata", "type recarray mawno strt ktf fthk aux boundname", - "shape (maxbound)", "reader urword"], - ["block packagedata", "name mawno", "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 ktf", "type double precision", - "shape", "tagged false", "in_record true", "reader urword"], - ["block packagedata", "name fthk", "type double precision", - "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 period", "name iper", "type integer", - "block_variable True", "in_record true", "tagged false", "shape", - "valid", "reader urword", "optional false"], - ["block period", "name mweperioddata", - "type recarray mawno mwesetting", "shape", "reader urword"], - ["block period", "name mawno", "type integer", "shape", - "tagged false", "in_record true", "reader urword", - "numeric_index true"], - ["block period", "name mwesetting", - "type keystring status temperature rate 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 temperature", "type string", "shape", - "tagged true", "in_record true", "time_series true", - "reader urword"], - ["block period", "name rate", "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"]] + "shape (maxbound)", + "reader urword", + ], + [ + "block packagedata", + "name mawno", + "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 ktf", + "type double precision", + "shape", + "tagged false", + "in_record true", + "reader urword", + ], + [ + "block packagedata", + "name fthk", + "type double precision", + "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 period", + "name iper", + "type integer", + "block_variable True", + "in_record true", + "tagged false", + "shape", + "valid", + "reader urword", + "optional false", + ], + [ + "block period", + "name mweperioddata", + "type recarray mawno mwesetting", + "shape", + "reader urword", + ], + [ + "block period", + "name mawno", + "type integer", + "shape", + "tagged false", + "in_record true", + "reader urword", + "numeric_index true", + ], + [ + "block period", + "name mwesetting", + "type keystring status temperature rate 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 temperature", + "type string", + "shape", + "tagged true", + "in_record true", + "time_series true", + "reader urword", + ], + [ + "block period", + "name rate", + "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, flow_package_name=None, - auxiliary=None, flow_package_auxiliary_name=None, - boundnames=None, print_input=None, print_temperature=None, - print_flows=None, save_flows=None, - temperature_filerecord=None, budget_filerecord=None, - budgetcsv_filerecord=None, timeseries=None, observations=None, - packagedata=None, mweperioddata=None, filename=None, - pname=None, **kwargs): - super().__init__(model, "mwe", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + flow_package_name=None, + auxiliary=None, + flow_package_auxiliary_name=None, + boundnames=None, + print_input=None, + print_temperature=None, + print_flows=None, + save_flows=None, + temperature_filerecord=None, + budget_filerecord=None, + budgetcsv_filerecord=None, + timeseries=None, + observations=None, + packagedata=None, + mweperioddata=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "mwe", filename, pname, loading_package, **kwargs) # set up variables - self.flow_package_name = self.build_mfdata("flow_package_name", - flow_package_name) + self.flow_package_name = self.build_mfdata( + "flow_package_name", flow_package_name + ) self.auxiliary = self.build_mfdata("auxiliary", auxiliary) self.flow_package_auxiliary_name = self.build_mfdata( - "flow_package_auxiliary_name", flow_package_auxiliary_name) + "flow_package_auxiliary_name", flow_package_auxiliary_name + ) self.boundnames = self.build_mfdata("boundnames", boundnames) self.print_input = self.build_mfdata("print_input", print_input) - self.print_temperature = self.build_mfdata("print_temperature", - print_temperature) + self.print_temperature = self.build_mfdata( + "print_temperature", print_temperature + ) self.print_flows = self.build_mfdata("print_flows", print_flows) self.save_flows = self.build_mfdata("save_flows", save_flows) self.temperature_filerecord = self.build_mfdata( - "temperature_filerecord", temperature_filerecord) - self.budget_filerecord = self.build_mfdata("budget_filerecord", - budget_filerecord) - self.budgetcsv_filerecord = self.build_mfdata("budgetcsv_filerecord", - budgetcsv_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) + "temperature_filerecord", temperature_filerecord + ) + self.budget_filerecord = self.build_mfdata( + "budget_filerecord", budget_filerecord + ) + self.budgetcsv_filerecord = self.build_mfdata( + "budgetcsv_filerecord", budgetcsv_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.packagedata = self.build_mfdata("packagedata", packagedata) self.mweperioddata = self.build_mfdata("mweperioddata", mweperioddata) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgwenam.py b/flopy/mf6/modflow/mfgwenam.py index a9a52989da..5d290021fa 100644 --- a/flopy/mf6/modflow/mfgwenam.py +++ b/flopy/mf6/modflow/mfgwenam.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -67,96 +67,236 @@ class ModflowGwenam(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - nc_mesh2d_filerecord = ListTemplateGenerator(('gwe6', 'nam', - 'options', - 'nc_mesh2d_filerecord')) - nc_structured_filerecord = ListTemplateGenerator(( - 'gwe6', 'nam', 'options', 'nc_structured_filerecord')) - nc_filerecord = ListTemplateGenerator(('gwe6', 'nam', 'options', - 'nc_filerecord')) - packages = ListTemplateGenerator(('gwe6', 'nam', 'packages', - 'packages')) + + nc_mesh2d_filerecord = ListTemplateGenerator( + ("gwe6", "nam", "options", "nc_mesh2d_filerecord") + ) + nc_structured_filerecord = ListTemplateGenerator( + ("gwe6", "nam", "options", "nc_structured_filerecord") + ) + nc_filerecord = ListTemplateGenerator(("gwe6", "nam", "options", "nc_filerecord")) + packages = ListTemplateGenerator(("gwe6", "nam", "packages", "packages")) package_abbr = "gwenam" _package_type = "nam" dfn_file_name = "gwe-nam.dfn" dfn = [ - ["header", ], - ["block options", "name list", "type string", "reader urword", - "optional true", "preserve_case true"], - ["block options", "name print_input", "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 nc_mesh2d_filerecord", - "type record netcdf_mesh2d fileout ncmesh2dfile", "shape", - "reader urword", "tagged true", "optional true", - "mf6internal ncmesh2drec"], - ["block options", "name netcdf_mesh2d", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false", "extended true"], - ["block options", "name nc_structured_filerecord", - "type record netcdf_structured fileout ncstructfile", "shape", - "reader urword", "tagged true", "optional true", - "mf6internal ncstructrec"], - ["block options", "name netcdf_structured", "type keyword", - "shape", "in_record true", "reader urword", "tagged true", - "optional false", "mf6internal netcdf_struct", "extended true"], - ["block options", "name fileout", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name ncmesh2dfile", "type string", - "preserve_case true", "shape", "in_record true", "reader urword", - "tagged false", "optional false", "extended true"], - ["block options", "name ncstructfile", "type string", - "preserve_case true", "shape", "in_record true", "reader urword", - "tagged false", "optional false", "extended true"], - ["block options", "name nc_filerecord", - "type record netcdf filein netcdf_filename", "reader urword", - "tagged true", "optional true"], - ["block options", "name netcdf", "type keyword", - "in_record true", "reader urword", "tagged true", - "optional false", "extended true"], - ["block options", "name filein", "type keyword", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name netcdf_filename", "type string", - "preserve_case true", "in_record true", "reader urword", - "optional false", "tagged false", "mf6internal netcdf_fname", - "extended true"], - ["block packages", "name packages", - "type recarray ftype fname pname", "reader urword", - "optional false"], - ["block packages", "name ftype", "in_record true", "type string", - "tagged false", "reader urword"], - ["block packages", "name fname", "in_record true", "type string", - "preserve_case true", "tagged false", "reader urword"], - ["block packages", "name pname", "in_record true", "type string", - "tagged false", "reader urword", "optional true"]] + [ + "header", + ], + [ + "block options", + "name list", + "type string", + "reader urword", + "optional true", + "preserve_case true", + ], + [ + "block options", + "name print_input", + "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 nc_mesh2d_filerecord", + "type record netcdf_mesh2d fileout ncmesh2dfile", + "shape", + "reader urword", + "tagged true", + "optional true", + "mf6internal ncmesh2drec", + ], + [ + "block options", + "name netcdf_mesh2d", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + "extended true", + ], + [ + "block options", + "name nc_structured_filerecord", + "type record netcdf_structured fileout ncstructfile", + "shape", + "reader urword", + "tagged true", + "optional true", + "mf6internal ncstructrec", + ], + [ + "block options", + "name netcdf_structured", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + "mf6internal netcdf_struct", + "extended true", + ], + [ + "block options", + "name fileout", + "type keyword", + "shape", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name ncmesh2dfile", + "type string", + "preserve_case true", + "shape", + "in_record true", + "reader urword", + "tagged false", + "optional false", + "extended true", + ], + [ + "block options", + "name ncstructfile", + "type string", + "preserve_case true", + "shape", + "in_record true", + "reader urword", + "tagged false", + "optional false", + "extended true", + ], + [ + "block options", + "name nc_filerecord", + "type record netcdf filein netcdf_filename", + "reader urword", + "tagged true", + "optional true", + ], + [ + "block options", + "name netcdf", + "type keyword", + "in_record true", + "reader urword", + "tagged true", + "optional false", + "extended true", + ], + [ + "block options", + "name filein", + "type keyword", + "in_record true", + "reader urword", + "tagged true", + "optional false", + ], + [ + "block options", + "name netcdf_filename", + "type string", + "preserve_case true", + "in_record true", + "reader urword", + "optional false", + "tagged false", + "mf6internal netcdf_fname", + "extended true", + ], + [ + "block packages", + "name packages", + "type recarray ftype fname pname", + "reader urword", + "optional false", + ], + [ + "block packages", + "name ftype", + "in_record true", + "type string", + "tagged false", + "reader urword", + ], + [ + "block packages", + "name fname", + "in_record true", + "type string", + "preserve_case true", + "tagged false", + "reader urword", + ], + [ + "block packages", + "name pname", + "in_record true", + "type string", + "tagged false", + "reader urword", + "optional true", + ], + ] - def __init__(self, model, loading_package=False, list=None, - print_input=None, print_flows=None, save_flows=None, - nc_mesh2d_filerecord=None, nc_structured_filerecord=None, - nc_filerecord=None, packages=None, filename=None, pname=None, - **kwargs): - super().__init__(model, "nam", filename, pname, - loading_package, **kwargs) + def __init__( + self, + model, + loading_package=False, + list=None, + print_input=None, + print_flows=None, + save_flows=None, + nc_mesh2d_filerecord=None, + nc_structured_filerecord=None, + nc_filerecord=None, + packages=None, + filename=None, + pname=None, + **kwargs, + ): + super().__init__(model, "nam", filename, pname, loading_package, **kwargs) # set up variables self.list = self.build_mfdata("list", list) self.print_input = self.build_mfdata("print_input", print_input) self.print_flows = self.build_mfdata("print_flows", print_flows) self.save_flows = self.build_mfdata("save_flows", save_flows) - self.nc_mesh2d_filerecord = self.build_mfdata("nc_mesh2d_filerecord", - nc_mesh2d_filerecord) + self.nc_mesh2d_filerecord = self.build_mfdata( + "nc_mesh2d_filerecord", nc_mesh2d_filerecord + ) self.nc_structured_filerecord = self.build_mfdata( - "nc_structured_filerecord", nc_structured_filerecord) + "nc_structured_filerecord", nc_structured_filerecord + ) self.nc_filerecord = self.build_mfdata("nc_filerecord", nc_filerecord) self.packages = self.build_mfdata("packages", packages) self._init_complete = True diff --git a/flopy/mf6/modflow/mfgweoc.py b/flopy/mf6/modflow/mfgweoc.py index 2f103cc0e5..b49f6206aa 100644 --- a/flopy/mf6/modflow/mfgweoc.py +++ b/flopy/mf6/modflow/mfgweoc.py @@ -1,6 +1,6 @@ # DO NOT MODIFY THIS FILE DIRECTLY. THIS FILE MUST BE CREATED BY # mf6/utils/createpackages.py -# FILE created on December 20, 2024 02:43:08 UTC +# FILE created on February 11, 2025 01:24:12 UTC from .. import mfpackage from ..data.mfdatautil import ListTemplateGenerator @@ -87,127 +87,343 @@ class ModflowGweoc(mfpackage.MFPackage): 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 + utility packages (mfutl*). For example, mfutllaktab package must have a mfgwflak package parent_file. """ - budget_filerecord = ListTemplateGenerator(('gwe6', 'oc', 'options', - 'budget_filerecord')) - budgetcsv_filerecord = ListTemplateGenerator(('gwe6', 'oc', - 'options', - 'budgetcsv_filerecord')) - temperature_filerecord = ListTemplateGenerator(('gwe6', 'oc', - 'options', - 'temperature_filerecord')) - temperatureprintrecord = ListTemplateGenerator(('gwe6', 'oc', - 'options', - 'temperatureprintrecord')) - saverecord = ListTemplateGenerator(('gwe6', 'oc', 'period', - 'saverecord')) - printrecord = ListTemplateGenerator(('gwe6', 'oc', 'period', - 'printrecord')) + + budget_filerecord = ListTemplateGenerator( + ("gwe6", "oc", "options", "budget_filerecord") + ) + budgetcsv_filerecord = ListTemplateGenerator( + ("gwe6", "oc", "options", "budgetcsv_filerecord") + ) + temperature_filerecord = ListTemplateGenerator( + ("gwe6", "oc", "options", "temperature_filerecord") + ) + temperatureprintrecord = ListTemplateGenerator( + ("gwe6", "oc", "options", "temperatureprintrecord") + ) + saverecord = ListTemplateGenerator(("gwe6", "oc", "period", "saverecord")) + printrecord = ListTemplateGenerator(("gwe6", "oc", "period", "printrecord")) package_abbr = "gweoc" _package_type = "oc" dfn_file_name = "gwe-oc.dfn" dfn = [ - ["header", ], - ["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 budgetcsv_filerecord", - "type record budgetcsv fileout budgetcsvfile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name budgetcsv", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name budgetcsvfile", "type string", - "preserve_case true", "shape", "in_record true", "reader urword", - "tagged false", "optional false"], - ["block options", "name temperature_filerecord", - "type record temperature fileout temperaturefile", "shape", - "reader urword", "tagged true", "optional true"], - ["block options", "name temperature", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name temperaturefile", "type string", - "preserve_case true", "shape", "in_record true", "reader urword", - "tagged false", "optional false"], - ["block options", "name temperatureprintrecord", - "type record temperature print_format formatrecord", "shape", - "reader urword", "optional true"], - ["block options", "name print_format", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block options", "name formatrecord", - "type record columns width digits format", "shape", - "in_record true", "reader urword", "tagged", "optional false"], - ["block options", "name columns", "type integer", "shape", - "in_record true", "reader urword", "tagged true", "optional"], - ["block options", "name width", "type integer", "shape", - "in_record true", "reader urword", "tagged true", "optional"], - ["block options", "name digits", "type integer", "shape", - "in_record true", "reader urword", "tagged true", "optional"], - ["block options", "name format", "type string", "shape", - "in_record true", "reader urword", "tagged false", - "optional false"], - ["block period", "name iper", "type integer", - "block_variable True", "in_record true", "tagged false", "shape", - "valid", "reader urword", "optional false"], - ["block period", "name saverecord", - "type record save rtype ocsetting", "shape", "reader urword", - "tagged false", "optional true"], - ["block period", "name save", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block period", "name printrecord", - "type record print rtype ocsetting", "shape", "reader urword", - "tagged false", "optional true"], - ["block period", "name print", "type keyword", "shape", - "in_record true", "reader urword", "tagged true", - "optional false"], - ["block period", "name rtype", "type string", "shape", - "in_record true", "reader urword", "tagged false", - "optional false"], - ["block period", "name ocsetting", - "type keystring all first last frequency steps", "shape", - "tagged false", "in_record true", "reader urword"], - ["block period", "name all", "type keyword", "shape", - "in_record true", "reader urword"], - ["block period", "name first", "type keyword", "shape", - "in_record true", "reader urword"], - ["block period", "name last", "type keyword", "shape", - "in_record true", "reader urword"], - ["block period", "name frequency", "type integer", "shape", - "tagged true", "in_record true", "reader urword"], - ["block period", "name steps", "type integer", "shape ( Date: Wed, 12 Feb 2025 07:13:11 -0500 Subject: [PATCH 2/2] ci(release): update version to 3.10.0.dev2 --- CITATION.cff | 4 ++-- README.md | 4 ++-- docs/PyPI_release.md | 2 +- flopy/version.py | 4 ++-- version.txt | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index 00d94e4fa3..65625b9cef 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -3,8 +3,8 @@ message: If you use this software, please cite both the article from preferred-c references, and the software itself. type: software title: FloPy -version: 3.9.2 -date-released: '2025-02-11' +version: 3.10.0.dev2 +date-released: '2025-02-12' doi: 10.5066/F7BK19FH abstract: A Python package to create, run, and post-process MODFLOW-based models. repository-artifact: https://pypi.org/project/flopy diff --git a/README.md b/README.md index 1c6f8c03de..44758df5c4 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ flopy3 -### Version 3.9.2 +### Version 3.10.0.dev2 [![flopy continuous integration](https://github.com/modflowpy/flopy/actions/workflows/commit.yml/badge.svg?branch=develop)](https://github.com/modflowpy/flopy/actions/workflows/commit.yml) [![Read the Docs](https://github.com/modflowpy/flopy/actions/workflows/rtd.yml/badge.svg?branch=develop)](https://github.com/modflowpy/flopy/actions/workflows/rtd.yml) @@ -150,7 +150,7 @@ How to Cite ##### ***Software/Code citation for FloPy:*** -[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2025, FloPy v3.9.2: U.S. Geological Survey Software Release, 11 February 2025, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) +[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2025, FloPy v3.10.0.dev2: U.S. Geological Survey Software Release, 12 February 2025, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) Additional FloPy Related Publications diff --git a/docs/PyPI_release.md b/docs/PyPI_release.md index 0e10ca6af2..9cdfa7d70d 100644 --- a/docs/PyPI_release.md +++ b/docs/PyPI_release.md @@ -30,4 +30,4 @@ How to Cite *Software/Code citation for FloPy:* -[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2025, FloPy v3.9.2: U.S. Geological Survey Software Release, 11 February 2025, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) +[Bakker, Mark, Post, Vincent, Hughes, J. D., Langevin, C. D., White, J. T., Leaf, A. T., Paulinski, S. R., Bellino, J. C., Morway, E. D., Toews, M. W., Larsen, J. D., Fienen, M. N., Starn, J. J., Brakenhoff, D. A., and Bonelli, W. P., 2025, FloPy v3.10.0.dev2: U.S. Geological Survey Software Release, 12 February 2025, https://doi.org/10.5066/F7BK19FH](https://doi.org/10.5066/F7BK19FH) diff --git a/flopy/version.py b/flopy/version.py index 0b59bb22a3..134ccb998c 100644 --- a/flopy/version.py +++ b/flopy/version.py @@ -1,4 +1,4 @@ # flopy version file automatically created using -# update_version.py on February 11, 2025 01:24:12 +# update_version.py on February 12, 2025 07:12:43 -__version__ = "3.9.2" +__version__ = "3.10.0.dev2" diff --git a/version.txt b/version.txt index 4764627f92..992d199d44 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -3.9.2 \ No newline at end of file +3.10.0.dev2 \ No newline at end of file