MODFLOW 6  version 6.9.0.dev0
USGS Modular Hydrologic Model
loadcontextmodule::loadcontexttype Type Reference

Input load context for generic dynamic loaders and StructArray based static loads. Classifies the input, determines in-scope parameters, and manages memory-manager scalars and array pointers. More...

Collaboration diagram for loadcontextmodule::loadcontexttype:
Collaboration graph

Private Member Functions

procedure init
 
procedure allocate_arrays
 
procedure allocate_params
 
procedure rsv_alloc
 
procedure destroy
 
procedure, private resolve_context
 
procedure, private resolve_loadtype
 
procedure, private set_params
 
procedure, private keystring_item_names
 
procedure, private resolve_dimensions
 
procedure, private scale_keystring_maxbound
 
procedure, private allocate_param
 
procedure check_developmode
 
procedure, private in_scope
 
procedure subindex_dependency
 
procedure, private option_check
 
procedure build_keystring_items
 
procedure, private resolve_nfeatures
 
procedure resolve_item_nfeatures
 
procedure, private shape_param_is_array
 

Private Attributes

integer(i4b), pointer naux => null()
 number of auxiliary variables More...
 
integer(i4b), pointer maxbound => null()
 value associated with named_bound More...
 
integer(i4b), pointer boundnames => null()
 are bound names optioned More...
 
integer(i4b), pointer iprpak => null()
 print input option More...
 
integer(i4b), pointer nbound => null()
 number of bounds in period More...
 
integer(i4b), pointer ncpl => null()
 ncpl associated with model shape More...
 
integer(i4b), pointer nodes => null()
 nodes associated with model shape More...
 
integer(i4b), dimension(:), pointer, contiguous mshape => null()
 model shape More...
 
type(characterstringtype), dimension(:), pointer, contiguous auxname_cst => null()
 array of auxiliary names More...
 
type(characterstringtype), dimension(:), pointer, contiguous boundname_cst => null()
 array of bound names More...
 
real(dp), dimension(:, :), pointer, contiguous auxvar => null()
 auxiliary variable array More...
 
integer(i4b) loadtype
 load type enum: LIST, LAYERARRAY, GRIDARRAY, KEYSTRING More...
 
logical(lgp) set_scalars = .false.
 .true. when dimension scalars must be set More...
 
logical(lgp) set_mshape = .false.
 .true. when model shape is load dependency More...
 
logical(lgp) is_exchange = .false.
 .true. for exchange contexts More...
 
logical(lgp) is_advanced = .false.
 .true. for an advanced package, any loadtype More...
 
character(len=lenvarname) blockname
 load block name More...
 
character(len=lenvarname) named_bound
 name of dimension variable for maxbound; defaults to MAXBOUND More...
 
integer(i4b) nleading = 0
 count of leading (pre-keystring) columns More...
 
character(len=linelength), dimension(:), allocatable params
 in-scope param tagnames More...
 
type(modflowinputtype) mf6_input
 description of input More...
 
logical(lgp) keystring_by_feature = .false.
 .true. for feature-addressed (IFNO/NUMBER/BNDNO) KEYSTRING loadtype More...
 
logical(lgp) keystring_by_node = .false.
 .true. for CELLID-addressed (e.g. TVK/TVS) KEYSTRING loadtype More...
 
logical(lgp) has_setting_dispatch = .false.
 .true. when keystring_by_feature .or. keystring_by_node More...
 
type(inputparamdefinitiontype), pointer setting_idt => null()
 internal idt for SETTING column More...
 
integer(i4b) nkeystring_items = 0
 count of expanded keystring items (0 for non-keystring) More...
 
type(keystringitemtype), dimension(:), allocatable keystring_items
 
character(len=lenvarname) feature_id_varname = ''
 leading id column mf6varname (feature-addressed) More...
 

Detailed Description

Definition at line 75 of file LoadContext.f90.

Member Function/Subroutine Documentation

◆ allocate_arrays()

procedure loadcontextmodule::loadcontexttype::allocate_arrays
private

Definition at line 114 of file LoadContext.f90.

◆ allocate_param()

procedure, private loadcontextmodule::loadcontexttype::allocate_param
private

Definition at line 125 of file LoadContext.f90.

◆ allocate_params()

procedure loadcontextmodule::loadcontexttype::allocate_params
private

Definition at line 115 of file LoadContext.f90.

◆ build_keystring_items()

procedure loadcontextmodule::loadcontexttype::build_keystring_items
private

Definition at line 130 of file LoadContext.f90.

◆ check_developmode()

procedure loadcontextmodule::loadcontexttype::check_developmode
private

Definition at line 126 of file LoadContext.f90.

◆ destroy()

procedure loadcontextmodule::loadcontexttype::destroy
private

Definition at line 117 of file LoadContext.f90.

◆ in_scope()

procedure, private loadcontextmodule::loadcontexttype::in_scope
private

Definition at line 127 of file LoadContext.f90.

◆ init()

procedure loadcontextmodule::loadcontexttype::init
private

Definition at line 113 of file LoadContext.f90.

◆ keystring_item_names()

procedure, private loadcontextmodule::loadcontexttype::keystring_item_names
private

Definition at line 122 of file LoadContext.f90.

◆ option_check()

procedure, private loadcontextmodule::loadcontexttype::option_check
private

Definition at line 129 of file LoadContext.f90.

◆ resolve_context()

procedure, private loadcontextmodule::loadcontexttype::resolve_context
private

Definition at line 119 of file LoadContext.f90.

◆ resolve_dimensions()

procedure, private loadcontextmodule::loadcontexttype::resolve_dimensions
private

Definition at line 123 of file LoadContext.f90.

◆ resolve_item_nfeatures()

procedure loadcontextmodule::loadcontexttype::resolve_item_nfeatures
private

Definition at line 132 of file LoadContext.f90.

◆ resolve_loadtype()

procedure, private loadcontextmodule::loadcontexttype::resolve_loadtype
private

Definition at line 120 of file LoadContext.f90.

◆ resolve_nfeatures()

procedure, private loadcontextmodule::loadcontexttype::resolve_nfeatures
private

Definition at line 131 of file LoadContext.f90.

◆ rsv_alloc()

procedure loadcontextmodule::loadcontexttype::rsv_alloc
private

Definition at line 116 of file LoadContext.f90.

◆ scale_keystring_maxbound()

procedure, private loadcontextmodule::loadcontexttype::scale_keystring_maxbound
private

Definition at line 124 of file LoadContext.f90.

◆ set_params()

procedure, private loadcontextmodule::loadcontexttype::set_params
private

Definition at line 121 of file LoadContext.f90.

◆ shape_param_is_array()

procedure, private loadcontextmodule::loadcontexttype::shape_param_is_array
private

Definition at line 133 of file LoadContext.f90.

◆ subindex_dependency()

procedure loadcontextmodule::loadcontexttype::subindex_dependency
private

Definition at line 128 of file LoadContext.f90.

Member Data Documentation

◆ auxname_cst

type(characterstringtype), dimension(:), pointer, contiguous loadcontextmodule::loadcontexttype::auxname_cst => null()
private

Definition at line 85 of file LoadContext.f90.

85  type(CharacterStringType), dimension(:), pointer, &
86  contiguous :: auxname_cst => null() !< array of auxiliary names

◆ auxvar

real(dp), dimension(:, :), pointer, contiguous loadcontextmodule::loadcontexttype::auxvar => null()
private

Definition at line 89 of file LoadContext.f90.

89  real(DP), dimension(:, :), pointer, &
90  contiguous :: auxvar => null() !< auxiliary variable array

◆ blockname

character(len=lenvarname) loadcontextmodule::loadcontexttype::blockname
private

Definition at line 98 of file LoadContext.f90.

98  character(len=LENVARNAME) :: blockname !< load block name

◆ boundname_cst

type(characterstringtype), dimension(:), pointer, contiguous loadcontextmodule::loadcontexttype::boundname_cst => null()
private

Definition at line 87 of file LoadContext.f90.

87  type(CharacterStringType), dimension(:), pointer, &
88  contiguous :: boundname_cst => null() !< array of bound names

◆ boundnames

integer(i4b), pointer loadcontextmodule::loadcontexttype::boundnames => null()
private

Definition at line 79 of file LoadContext.f90.

79  integer(I4B), pointer :: boundnames => null() !< are bound names optioned

◆ feature_id_varname

character(len=lenvarname) loadcontextmodule::loadcontexttype::feature_id_varname = ''
private

Definition at line 110 of file LoadContext.f90.

110  character(len=LENVARNAME) :: feature_id_varname = '' !< leading id column mf6varname (feature-addressed)

◆ has_setting_dispatch

logical(lgp) loadcontextmodule::loadcontexttype::has_setting_dispatch = .false.
private

Definition at line 106 of file LoadContext.f90.

106  logical(LGP) :: has_setting_dispatch = .false. !< .true. when keystring_by_feature .or. keystring_by_node

◆ iprpak

integer(i4b), pointer loadcontextmodule::loadcontexttype::iprpak => null()
private

Definition at line 80 of file LoadContext.f90.

80  integer(I4B), pointer :: iprpak => null() !< print input option

◆ is_advanced

logical(lgp) loadcontextmodule::loadcontexttype::is_advanced = .false.
private

Definition at line 96 of file LoadContext.f90.

96  logical(LGP) :: is_advanced = .false. !< .true. for an advanced package, any loadtype

◆ is_exchange

logical(lgp) loadcontextmodule::loadcontexttype::is_exchange = .false.
private

Definition at line 95 of file LoadContext.f90.

95  logical(LGP) :: is_exchange = .false. !< .true. for exchange contexts

◆ keystring_by_feature

logical(lgp) loadcontextmodule::loadcontexttype::keystring_by_feature = .false.
private

Definition at line 104 of file LoadContext.f90.

104  logical(LGP) :: keystring_by_feature = .false. !< .true. for feature-addressed (IFNO/NUMBER/BNDNO) KEYSTRING loadtype

◆ keystring_by_node

logical(lgp) loadcontextmodule::loadcontexttype::keystring_by_node = .false.
private

Definition at line 105 of file LoadContext.f90.

105  logical(LGP) :: keystring_by_node = .false. !< .true. for CELLID-addressed (e.g. TVK/TVS) KEYSTRING loadtype

◆ keystring_items

type(keystringitemtype), dimension(:), allocatable loadcontextmodule::loadcontexttype::keystring_items
private

Definition at line 109 of file LoadContext.f90.

109  type(KeystringItemType), allocatable :: keystring_items(:)

◆ loadtype

integer(i4b) loadcontextmodule::loadcontexttype::loadtype
private

Definition at line 92 of file LoadContext.f90.

92  integer(I4B) :: loadtype !< load type enum: LIST, LAYERARRAY, GRIDARRAY, KEYSTRING

◆ maxbound

integer(i4b), pointer loadcontextmodule::loadcontexttype::maxbound => null()
private

Definition at line 78 of file LoadContext.f90.

78  integer(I4B), pointer :: maxbound => null() !< value associated with named_bound

◆ mf6_input

type(modflowinputtype) loadcontextmodule::loadcontexttype::mf6_input
private

Definition at line 102 of file LoadContext.f90.

102  type(ModflowInputType) :: mf6_input !< description of input

◆ mshape

integer(i4b), dimension(:), pointer, contiguous loadcontextmodule::loadcontexttype::mshape => null()
private

Definition at line 84 of file LoadContext.f90.

84  integer(I4B), dimension(:), pointer, contiguous :: mshape => null() !< model shape

◆ named_bound

character(len=lenvarname) loadcontextmodule::loadcontexttype::named_bound
private

Definition at line 99 of file LoadContext.f90.

99  character(len=LENVARNAME) :: named_bound !< name of dimension variable for maxbound; defaults to MAXBOUND

◆ naux

integer(i4b), pointer loadcontextmodule::loadcontexttype::naux => null()
private

Definition at line 77 of file LoadContext.f90.

77  integer(I4B), pointer :: naux => null() !< number of auxiliary variables

◆ nbound

integer(i4b), pointer loadcontextmodule::loadcontexttype::nbound => null()
private

Definition at line 81 of file LoadContext.f90.

81  integer(I4B), pointer :: nbound => null() !< number of bounds in period

◆ ncpl

integer(i4b), pointer loadcontextmodule::loadcontexttype::ncpl => null()
private

Definition at line 82 of file LoadContext.f90.

82  integer(I4B), pointer :: ncpl => null() !< ncpl associated with model shape

◆ nkeystring_items

integer(i4b) loadcontextmodule::loadcontexttype::nkeystring_items = 0
private

Definition at line 108 of file LoadContext.f90.

108  integer(I4B) :: nkeystring_items = 0 !< count of expanded keystring items (0 for non-keystring)

◆ nleading

integer(i4b) loadcontextmodule::loadcontexttype::nleading = 0
private

Definition at line 100 of file LoadContext.f90.

100  integer(I4B) :: nleading = 0 !< count of leading (pre-keystring) columns

◆ nodes

integer(i4b), pointer loadcontextmodule::loadcontexttype::nodes => null()
private

Definition at line 83 of file LoadContext.f90.

83  integer(I4B), pointer :: nodes => null() !< nodes associated with model shape

◆ params

character(len=linelength), dimension(:), allocatable loadcontextmodule::loadcontexttype::params
private

Definition at line 101 of file LoadContext.f90.

101  character(len=LINELENGTH), dimension(:), allocatable :: params !< in-scope param tagnames

◆ set_mshape

logical(lgp) loadcontextmodule::loadcontexttype::set_mshape = .false.
private

Definition at line 94 of file LoadContext.f90.

94  logical(LGP) :: set_mshape = .false. !< .true. when model shape is load dependency

◆ set_scalars

logical(lgp) loadcontextmodule::loadcontexttype::set_scalars = .false.
private

Definition at line 93 of file LoadContext.f90.

93  logical(LGP) :: set_scalars = .false. !< .true. when dimension scalars must be set

◆ setting_idt

type(inputparamdefinitiontype), pointer loadcontextmodule::loadcontexttype::setting_idt => null()
private

Definition at line 107 of file LoadContext.f90.

107  type(InputParamDefinitionType), pointer :: setting_idt => null() !< internal idt for SETTING column

The documentation for this type was generated from the following file: