MODFLOW 6  version 6.8.0.dev0
USGS Modular Hydrologic Model
InputDefinition.f90
Go to the documentation of this file.
1 !> @brief Input definition module.
2 !!
3 !! This module contains derived types that represent
4 !! input parameters as described in definition files.
5 !!
6 !<
8 
9  use kindmodule, only: lgp
11 
12  implicit none
13  private
14  public :: inputparamdefinitiontype, &
16 
17  !> @brief Input parameter definition. Describes an input parameter.
19  character(len=LENCOMPONENTNAME) :: component_type = '' !< type of component, e.g. GWF
20  character(len=LENCOMPONENTNAME) :: subcomponent_type = '' !< type of subcomponent, e.g. CHD
21  character(len=LINELENGTH) :: blockname = '' !< input block, e.g. DiMENSIONS
22  character(len=LINELENGTH) :: tagname = '' !< parameter user tag name
23  character(len=LENVARNAME) :: mf6varname = '' !< parameter internal managed memory name
24  character(len=LINELENGTH) :: datatype = '' !< parameter data type
25  character(len=LINELENGTH) :: shape = '' !< shape of data type
26  character(len=LINELENGTH) :: longname = '' !< description of variable
27  logical(LGP) :: required = .false. !< is the parameter required
28  logical(LGP) :: developmode = .false. !< is the parameter developmode
29  logical(LGP) :: in_record = .false. !< is the parameter within an input record
30  logical(LGP) :: preserve_case = .false. !< should string case be preserved
31  logical(LGP) :: layered = .false. !< does the parameter support a layered read
32  logical(LGP) :: timeseries = .false. !< does the parameter support timeseries
34 
35  !> @brief Input block definition. Describes an input block.
37  character(len=LINELENGTH) :: blockname = '' !< name of block, e.g. DIMENSIONS
38  logical(LGP) :: required = .false. !< is the block required
39  logical(LGP) :: aggregate = .false. !< is this structarray style input
40  logical(LGP) :: block_variable = .false. !< does this block have a block variable
41  logical(LGP) :: timeseries = .false. !< does this block support timeseries
43 
44 end module inputdefinitionmodule
This module contains simulation constants.
Definition: Constants.f90:9
integer(i4b), parameter linelength
maximum length of a standard line
Definition: Constants.f90:45
integer(i4b), parameter lencomponentname
maximum length of a component name
Definition: Constants.f90:18
integer(i4b), parameter lenvarname
maximum length of a variable name
Definition: Constants.f90:17
Input definition module.
This module defines variable data types.
Definition: kind.f90:8
Input block definition. Describes an input block.
Input parameter definition. Describes an input parameter.