33 character(len=LENPACKAGETYPE),
dimension(OLF_NBASEPKG) :: &
35 'OC6 ',
'IC6 ',
'OBS6 ', &
43 character(len=LENPACKAGETYPE),
dimension(OLF_NMULTIPKG) ::
olf_multipkg
44 data olf_multipkg/
'FLW6 ',
'CHD6 ',
'CDB6 ',
'ZDG6 ',
' ', &
54 subroutine olf_cr(filename, id, modelname)
57 character(len=*),
intent(in) :: filename
58 integer(I4B),
intent(in) :: id
59 character(len=*),
intent(in) :: modelname
70 call this%initialize(
'OLF', filename, id, modelname)
73 call this%set_namfile_options()
79 call this%create_packages()
95 character(len=LENMEMPATH) :: input_mempath
96 character(len=LINELENGTH) :: lst_fname
102 call mem_set_value(lst_fname,
'LIST', input_mempath, found%list)
103 call mem_set_value(this%inewton,
'NEWTON', input_mempath, found%newton)
104 call mem_set_value(this%inewtonur,
'UNDER_RELAXATION', input_mempath, &
105 found%under_relaxation)
106 call mem_set_value(this%iprpak,
'PRINT_INPUT', input_mempath, &
108 call mem_set_value(this%iprflow,
'PRINT_FLOWS', input_mempath, &
110 call mem_set_value(this%ipakcb,
'SAVE_FLOWS', input_mempath, found%save_flows)
113 call this%create_lstfile(lst_fname, this%filename, found%list, &
114 'CHANNEL FLOW MODEL (OLF)')
117 if (found%save_flows)
then
122 if (this%iout > 0)
then
123 call this%log_namfile_options(found)
135 write (this%iout,
'(1x,a)')
'BEGIN NAMEFILE OPTIONS'
137 if (found%print_input)
then
138 write (this%iout,
'(4x,a)')
'STRESS PACKAGE INPUT WILL BE PRINTED '// &
139 'FOR ALL MODEL STRESS PACKAGES'
142 if (found%print_flows)
then
143 write (this%iout,
'(4x,a)')
'PACKAGE FLOWS WILL BE PRINTED '// &
144 'FOR ALL MODEL PACKAGES'
147 if (found%save_flows)
then
148 write (this%iout,
'(4x,a)') &
149 'FLOWS WILL BE SAVED TO BUDGET FILE SPECIFIED IN OUTPUT CONTROL'
152 write (this%iout,
'(1x,a)')
'END NAMEFILE OPTIONS'
subroutine, public addbasemodeltolist(list, model)
This module contains the BudgetModule.
subroutine, public budget_cr(this, name_model)
@ brief Create a new budget object
This module contains simulation constants.
integer(i4b), parameter linelength
maximum length of a standard line
integer(i4b), parameter lenpackagetype
maximum length of a package type (DIS6, SFR6, CSUB6, etc.)
integer(i4b), parameter lenmempath
maximum length of the memory path
This module defines variable data types.
type(listtype), public basemodellist
character(len=lenmempath) function create_mem_path(component, subcomponent, context)
returns the path to the memory object
Channel Flow (OLF) Module.
integer(i4b), parameter, public olf_nmultipkg
OLF multi package array descriptors.
subroutine set_namfile_options(this)
Handle namefile options.
character(len=lenpackagetype), dimension(olf_nbasepkg), public olf_basepkg
candidates for input and these will be loaded in the order specified.
character(len=lenpackagetype), dimension(olf_nmultipkg), public olf_multipkg
subroutine, public olf_cr(filename, id, modelname)
Create a new overland flow model object.
subroutine log_namfile_options(this, found)
Write model namfile options to list file.
integer(i4b), parameter, public olf_nbasepkg
OLF base package array descriptors.
integer(i4b), parameter niunit_olf
This module contains simulation methods.
subroutine, public store_error(msg, terminate)
Store an error message.
This module contains simulation variables.
character(len=linelength) idm_context
Surface Water Flow (SWF) Module.
Highest level model type. All models extend this parent type.