Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion autotest/test_gwf_npf_tvk02.py
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ def build_models(idx, test):
tvkspd[kper - 1] = spd

tvk = flopy.mf6.ModflowUtltvk(
npf, print_input=True, perioddata=tvkspd, filename=tvk_filename
npf, print_input=True, maxbound=2, perioddata=tvkspd, filename=tvk_filename
)

# chd files
Expand Down
5 changes: 5 additions & 0 deletions doc/mf6io/framework/processing_of_input.tex
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,11 @@ \subsection{Supported Components}
EXG/GWEGWE & GWE6-GWE6 \\
EXG/GWFPRT & GWF6-PRT6 \\
\hline
UTL/HPC & HPC6 \\
UTL/NCF & NCF6 \\
UTL/TVK & TVK6 \\
UTL/TVS & TVS6 \\
\hline
\label{table:idmsupported}
\end{longtable}
%\label{table:idmsupported}
Expand Down
1 change: 1 addition & 0 deletions doc/mf6io/mf6ivar/dfn/gwf-npf.dfn
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# --------------------- gwf npf options ---------------------
# mf6 subpackage utl-tvk

block options
name save_flows
Expand Down
1 change: 1 addition & 0 deletions doc/mf6io/mf6ivar/dfn/gwf-sto.dfn
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# --------------------- gwf sto options ---------------------
# mf6 subpackage utl-tvs

block options
name save_flows
Expand Down
48 changes: 18 additions & 30 deletions doc/mf6io/mf6ivar/dfn/utl-tvk.dfn
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,15 @@ tagged false
longname file name of time series information
description REPLACE timeseriesfile {}

# --------------------- gwf tvk dimensions ---------------------

block dimensions
name maxbound
type integer
reader urword
optional true
longname maximum number of tvk entries
description REPLACE maxbound {'{#1}': 'tvk'}

# --------------------- gwf tvk period ---------------------

Expand All @@ -71,7 +80,7 @@ description REPLACE iper {}

block period
name perioddata
type recarray cellid tvksetting
type recarray cellid tvtype tvvalue
shape
reader urword
longname
Expand All @@ -88,44 +97,23 @@ longname cell identifier
description REPLACE cellid {}

block period
name tvksetting
type keystring k k22 k33
name tvtype
type string
shape
tagged false
in_record true
valid k k22 k33
reader urword
longname
description line of information that is parsed into a property name keyword and values. Property name keywords that can be used to start the TVKSETTING string include: K, K22, and K33.
description Time-Varying Hydraulic Conductivity type. Supported types are: K, K22 and K33.

block period
name k
name tvvalue
type double precision
shape
tagged true
in_record true
reader urword
time_series true
longname hydraulic conductivity (L/T)
description is the new value to be assigned as the cell's hydraulic conductivity from the start of the specified stress period, as per K in the NPF package. If the OPTIONS block includes a TS6 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 k22
type double precision
shape
tagged true
in_record true
reader urword
time_series true
longname hydraulic conductivity of second ellipsoid axis (L/T)
description is the new value to be assigned as the cell's hydraulic conductivity of the second ellipsoid axis (or the ratio of K22/K if the K22OVERK NPF package option is specified) from the start of the specified stress period, as per K22 in the NPF package. For an unrotated case this is the hydraulic conductivity in the y direction. If the OPTIONS block includes a TS6 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 k33
type double precision
shape
tagged true
tagged false
in_record true
reader urword
time_series true
longname hydraulic conductivity of third ellipsoid axis (L/T)
description is the new value to be assigned as the cell's hydraulic conductivity of the third ellipsoid axis (or the ratio of K33/K if the K33OVERK NPF package option is specified) from the start of the specified stress period, as per K33 in the NPF package. For an unrotated case, this is the vertical hydraulic conductivity. If the OPTIONS block includes a TS6 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.
longname time-varying hydraulic conductivity
description is the new conductiivity value to be assigned to the cell. If TVTYPE is K, the value will be assigned as the cell's hydraulic conductivity from the start of the specified stress period, as per K in the NPF package. If TVTYPE is K22, the new value will be assigned as the cell's hydraulic conductivity of the second ellipsoid axis (or the ratio of K22/K if the K22OVERK NPF package option is specified) from the start of the specified stress period, as per K22 in the NPF package. For an unrotated case this is the hydraulic conductivity in the y direction. If TVTYPE is K33, the new value will be assigned as the cell's hydraulic conductivity of the third ellipsoid axis (or the ratio of K33/K if the K33OVERK NPF package option is specified) from the start of the specified stress period, as per K33 in the NPF package. For an unrotated case, this is the vertical hydraulic conductivity. If the OPTIONS block includes a TS6 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.
38 changes: 19 additions & 19 deletions doc/mf6io/mf6ivar/dfn/utl-tvs.dfn
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ name disable_storage_change_integration
type keyword
reader urword
optional true
mf6internal disable_sto_chg
longname deactivate storage change integration
description keyword that deactivates inclusion of storage derivative terms in the STO package matrix formulation. In the absence of this keyword (the default), the groundwater storage formulation will be modified to correctly adjust heads based on transient variations in stored water volumes arising from changes to SS and SY properties.

Expand Down Expand Up @@ -61,6 +62,15 @@ tagged false
longname file name of time series information
description REPLACE timeseriesfile {}

# --------------------- gwf tvs dimensions ---------------------

block dimensions
name maxbound
type integer
reader urword
optional true
longname maximum number of tvs entries
description REPLACE maxbound {'{#1}': 'tvs'}

# --------------------- gwf tvs period ---------------------

Expand All @@ -79,7 +89,7 @@ description REPLACE iper {}

block period
name perioddata
type recarray cellid tvssetting
type recarray cellid tvtype tvvalue
shape
reader urword
longname
Expand All @@ -96,33 +106,23 @@ longname cell identifier
description REPLACE cellid {}

block period
name tvssetting
type keystring ss sy
name tvtype
type string
shape
tagged false
in_record true
valid ss sy
reader urword
longname
description line of information that is parsed into a property name keyword and values. Property name keywords that can be used to start the TVSSETTING string include: SS and SY.
description Time-Varying storage type. Supported types are: SS and SY.

block period
name ss
name tvvalue
type double precision
shape
tagged true
in_record true
reader urword
time_series true
longname specific storage
description is the new value to be assigned as the cell's specific storage (or storage coefficient if the STORAGECOEFFICIENT STO package option is specified) from the start of the specified stress period, as per SS in the STO package. Specific storage values must be greater than or equal to 0. If the OPTIONS block includes a TS6 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 sy
type double precision
shape
tagged true
tagged false
in_record true
reader urword
time_series true
longname specific yield
description is the new value to be assigned as the cell's specific yield from the start of the specified stress period, as per SY in the STO package. Specific yield values must be greater than or equal to 0. If the OPTIONS block includes a TS6 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.
longname time-varying storage
description is the new value to be assigned as the cell's specific yield or specific storage (or storage coefficient if the STORAGECOEFFICIENT STO package option is specified) . Value applies from the start of the specified stress period, as per SS and SY in the STO package. Specific storage or specific yield values must be greater than or equal to 0. If the OPTIONS block includes a TS6 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.
2 changes: 2 additions & 0 deletions make/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,8 @@ $(OBJDIR)/InputDefinition.o \
$(OBJDIR)/ListIterator.o \
$(OBJDIR)/PtrHashTable.o \
$(OBJDIR)/MemoryContainerIterator.o \
$(OBJDIR)/utl-tvsidm.o \
$(OBJDIR)/utl-tvkidm.o \
$(OBJDIR)/utl-ncfidm.o \
$(OBJDIR)/utl-hpcidm.o \
$(OBJDIR)/swf-zdgidm.o \
Expand Down
4 changes: 3 additions & 1 deletion msvs/mf6core.vfproj
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,9 @@
<File RelativePath="..\src\Idm\swf-stoidm.f90"/>
<File RelativePath="..\src\Idm\swf-zdgidm.f90"/>
<File RelativePath="..\src\Idm\utl-hpcidm.f90"/>
<File RelativePath="..\src\Idm\utl-ncfidm.f90"/></Filter>
<File RelativePath="..\src\Idm\utl-ncfidm.f90"/>
<File RelativePath="..\src\Idm\utl-tvkidm.f90"/>
<File RelativePath="..\src\Idm\utl-tvsidm.f90"/></Filter>
<Filter Name="Model">
<Filter Name="Connection">
<File RelativePath="..\src\Model\Connection\CellWithNbrs.f90"/>
Expand Down
2 changes: 1 addition & 1 deletion src/Idm/gwf-npfidm.f90
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ module GwfNpfInputModule
character(len=16), parameter :: &
gwf_npf_subpackages(*) = &
[ &
' ' &
'UTL-TVK ' &
]

type(InputParamDefinitionType), parameter :: &
Expand Down
2 changes: 1 addition & 1 deletion src/Idm/gwf-stoidm.f90
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ module GwfStoInputModule
character(len=16), parameter :: &
gwf_sto_subpackages(*) = &
[ &
' ' &
'UTL-TVS ' &
]

type(InputParamDefinitionType), parameter :: &
Expand Down
26 changes: 26 additions & 0 deletions src/Idm/selector/IdmUtlDfnSelector.f90
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ module IdmUtlDfnSelectorModule
InputBlockDefinitionType
use UtlHpcInputModule
use UtlNcfInputModule
use UtlTvkInputModule
use UtlTvsInputModule

implicit none
private
Expand Down Expand Up @@ -46,6 +48,10 @@ function utl_param_definitions(subcomponent) result(input_definition)
call set_param_pointer(input_definition, utl_hpc_param_definitions)
case ('NCF')
call set_param_pointer(input_definition, utl_ncf_param_definitions)
case ('TVK')
call set_param_pointer(input_definition, utl_tvk_param_definitions)
case ('TVS')
call set_param_pointer(input_definition, utl_tvs_param_definitions)
case default
end select
return
Expand All @@ -60,6 +66,10 @@ function utl_aggregate_definitions(subcomponent) result(input_definition)
call set_param_pointer(input_definition, utl_hpc_aggregate_definitions)
case ('NCF')
call set_param_pointer(input_definition, utl_ncf_aggregate_definitions)
case ('TVK')
call set_param_pointer(input_definition, utl_tvk_aggregate_definitions)
case ('TVS')
call set_param_pointer(input_definition, utl_tvs_aggregate_definitions)
case default
end select
return
Expand All @@ -74,6 +84,10 @@ function utl_block_definitions(subcomponent) result(input_definition)
call set_block_pointer(input_definition, utl_hpc_block_definitions)
case ('NCF')
call set_block_pointer(input_definition, utl_ncf_block_definitions)
case ('TVK')
call set_block_pointer(input_definition, utl_tvk_block_definitions)
case ('TVS')
call set_block_pointer(input_definition, utl_tvs_block_definitions)
case default
end select
return
Expand All @@ -87,6 +101,10 @@ function utl_idm_multi_package(subcomponent) result(multi_package)
multi_package = utl_hpc_multi_package
case ('NCF')
multi_package = utl_ncf_multi_package
case ('TVK')
multi_package = utl_tvk_multi_package
case ('TVS')
multi_package = utl_tvs_multi_package
case default
call store_error('Idm selector subcomponent not found; '//&
&'component="UTL"'//&
Expand All @@ -103,6 +121,10 @@ function utl_idm_subpackages(subcomponent) result(subpackages)
call set_subpkg_pointer(subpackages, utl_hpc_subpackages)
case ('NCF')
call set_subpkg_pointer(subpackages, utl_ncf_subpackages)
case ('TVK')
call set_subpkg_pointer(subpackages, utl_tvk_subpackages)
case ('TVS')
call set_subpkg_pointer(subpackages, utl_tvs_subpackages)
case default
end select
return
Expand All @@ -117,6 +139,10 @@ function utl_idm_integrated(subcomponent) result(integrated)
integrated = .true.
case ('NCF')
integrated = .true.
case ('TVK')
integrated = .true.
case ('TVS')
integrated = .true.
case default
end select
return
Expand Down
Loading
Loading