MODFLOW 6  version 6.5.0.dev2
MODFLOW 6 Code Documentation
InputDefinition.f90
Go to the documentation of this file.
1 !> @brief This module contains the InputDefinitionModule
2 !!
3 !! This module contains type definitions that represent
4 !! descriptions of input from modflow 6 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 type
18  !!
19  !! This type is used to store information for
20  !! each modflow input record
21  !!
22  !<
24  character(len=LENCOMPONENTNAME) :: component_type = '' !< type of component, e.g. GWF
25  character(len=LENCOMPONENTNAME) :: subcomponent_type = '' !< type of subcomponent, e.g. CHD
26  character(len=LINELENGTH) :: blockname = '' !< input block, e.g. DiMENSIONS
27  character(len=LINELENGTH) :: tagname = '' !< parameter user tag name
28  character(len=LENVARNAME) :: mf6varname = '' !< parameter internal managed memory name
29  character(len=LINELENGTH) :: datatype = '' !< parameter data type
30  character(len=LINELENGTH) :: shape = '' !< shape of data type
31  logical(LGP) :: required = .false. !< is the parameter required
32  logical(LGP) :: in_record = .false. !< is the parameter within an input record
33  logical(LGP) :: preserve_case = .false. !< should string case be preserved
34  logical(LGP) :: layered = .false. !< does the parameter support a layered read
35  logical(LGP) :: timeseries = .false. !< does the parameter support timeseries
37 
38  !> @brief Input block definition type
39  !!
40  !! This type is used to store information for
41  !! how to read a modflow block
42  !!
43  !<
45  character(len=LINELENGTH) :: blockname = '' !< name of block, e.g. DIMENSIONS
46  logical(LGP) :: required = .false. !< is the block required
47  logical(LGP) :: aggregate = .false. !< is this structarray style input
48  logical(LGP) :: block_variable = .false. !< does this block have a block variable
49  logical(LGP) :: timeseries = .false. !< does this block support timeseries
51 
52 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:44
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
This module contains the InputDefinitionModule.
This module defines variable data types.
Definition: kind.f90:8