MODFLOW 6  version 6.7.0.dev0
USGS Modular Hydrologic Model
mf6filestoinputmodule Module Reference

This module contains the Mf6FileStoInputModule. More...

Data Types

type  stoinputtype
 STO package loader. More...
 

Functions/Subroutines

subroutine sto_init (this, mf6_input, component_name, component_input_name, input_name, iperblock, parser, iout)
 
subroutine sto_rp (this, parser)
 
subroutine sto_destroy (this)
 

Detailed Description

This module contains the routines for reading STO period block input

Function/Subroutine Documentation

◆ sto_destroy()

subroutine mf6filestoinputmodule::sto_destroy ( class(stoinputtype), intent(inout)  this)

Definition at line 102 of file Mf6FileStoInput.f90.

104  class(StoInputType), intent(inout) :: this
105  call mem_deallocate(this%storage, 'STORAGE', this%mf6_input%mempath)
106  call this%DynamicPkgLoadType%destroy()

◆ sto_init()

subroutine mf6filestoinputmodule::sto_init ( class(stoinputtype), intent(inout)  this,
type(modflowinputtype), intent(in)  mf6_input,
character(len=*), intent(in)  component_name,
character(len=*), intent(in)  component_input_name,
character(len=*), intent(in)  input_name,
integer(i4b), intent(in)  iperblock,
type(blockparsertype), intent(inout), pointer  parser,
integer(i4b), intent(in)  iout 
)
private

Definition at line 32 of file Mf6FileStoInput.f90.

37  class(StoInputType), intent(inout) :: this
38  type(ModflowInputType), intent(in) :: mf6_input
39  character(len=*), intent(in) :: component_name
40  character(len=*), intent(in) :: component_input_name
41  character(len=*), intent(in) :: input_name
42  integer(I4B), intent(in) :: iperblock
43  type(BlockParserType), pointer, intent(inout) :: parser
44  integer(I4B), intent(in) :: iout
45  type(LoadMf6FileType) :: loader
46 
47  ! init loader
48  call this%DynamicPkgLoadType%init(mf6_input, component_name, &
49  component_input_name, input_name, &
50  iperblock, iout)
51  ! initialize static loader
52  call loader%load(parser, mf6_input, this%nc_vars, this%input_name, iout)
53 
54  ! allocate storage string
55  call mem_allocate(this%storage, linelength, 'STORAGE', this%mf6_input%mempath)
56 
57  ! initialize storage to TRANSIENT (model iss=0)
58  this%storage = 'TRANSIENT'
This module contains block parser methods.
Definition: BlockParser.f90:7
This module contains the LoadMf6FileModule.
Definition: LoadMf6File.f90:8
Static parser based input loader.
Definition: LoadMf6File.f90:48

◆ sto_rp()

subroutine mf6filestoinputmodule::sto_rp ( class(stoinputtype), intent(inout)  this,
type(blockparsertype), intent(inout), pointer  parser 
)

Definition at line 61 of file Mf6FileStoInput.f90.

65  class(StoInputType), intent(inout) :: this
66  type(BlockParserType), pointer, intent(inout) :: parser
67  character(len=LINELENGTH) :: tagname
68  type(InputParamDefinitionType), pointer :: idt
69  logical(LGP) :: endOfBlock
70 
71  ! read next line
72  call parser%GetNextLine(endofblock)
73 
74  ! return if no input
75  if (endofblock) return
76 
77  ! read the tag
78  call parser%GetStringCaps(tagname)
79 
80  ! verify tag is supported
81  idt => get_param_definition_type(this%mf6_input%param_dfns, &
82  this%mf6_input%component_type, &
83  this%mf6_input%subcomponent_type, &
84  'PERIOD', tagname, this%input_name)
85  ! set storage
86  this%storage = idt%tagname
87 
88  ! only one input line is expected, terminate block
89  call parser%terminateblock()
90 
91  ! log lst file header
92  call idm_log_header(this%mf6_input%component_name, &
93  this%mf6_input%subcomponent_name, this%iout)
94 
95  call idm_log_var(this%storage, tagname, this%mf6_input%mempath, this%iout)
96 
97  ! close logging statement
98  call idm_log_close(this%mf6_input%component_name, &
99  this%mf6_input%subcomponent_name, this%iout)
This module contains the DefinitionSelectModule.
type(inputparamdefinitiontype) function, pointer, public get_param_definition_type(input_definition_types, component_type, subcomponent_type, blockname, tagname, filename)
Return parameter definition.
This module contains the Input Data Model Logger Module.
Definition: IdmLogger.f90:7
subroutine, public idm_log_close(component, subcomponent, iout)
@ brief log the closing message
Definition: IdmLogger.f90:56
subroutine, public idm_log_header(component, subcomponent, iout)
@ brief log a header message
Definition: IdmLogger.f90:44
Here is the call graph for this function: