10 use,
intrinsic :: iso_fortran_env, only: output_unit
15 character(len=LINELENGTH) ::
simfile =
'mfsim.nam'
17 character(len=LINELENGTH) ::
simstdout =
'mfsim.stdout'
24 character(len=LENMODELNAME),
dimension(:),
allocatable ::
model_names
25 integer(I4B),
dimension(:),
pointer,
contiguous ::
model_ranks
This module contains simulation constants.
integer(i4b), parameter linelength
maximum length of a standard line
@ mnormal
normal output mode
integer(i4b), parameter lenmodelname
maximum length of the model name
integer(i4b), parameter iustart
starting file unit number
integer(i4b), parameter maxcharlen
maximum length of char string
@ vall
write all simulation notes and warnings
This module defines variable data types.
This module contains simulation variables.
character(len=maxcharlen) errmsg
error message string
character(len=linelength) idm_context
integer(i4b) iforcestop
forced stop flag (1) forces a call to ustop(..) when the simulation has ended, (0) doesn't
integer(i4b) isimcheck
simulation input check flag (1) to check input, (0) to ignore checks
integer(i4b) ifailedstepretry
current retry for this time step
integer(i4b) isimcontinue
simulation continue flag (1) to continue if isimcnvg = 0, (0) to terminate
character(len=linelength) simulation_mode
integer(i4b) isim_level
simulation output level
integer(i4b) ireturnerr
return code for program (0) successful, (1) non-convergence, (2) error
integer(i4b), dimension(:), allocatable model_loc_idx
equals the local index into the basemodel list (-1 when not available)
character(len=maxcharlen) warnmsg
warning message string
integer(i4b), dimension(:), pointer, contiguous model_ranks
all model processor ids (ranks) in the (global) simulation
integer(i4b) laststepfailed
flag indicating if the last step failed (1) if last step failed; (0) otherwise (set in converge_check...
character(len=linelength) simstdout
name of standard out file if screen output is piped to a file
integer(i4b) numnoconverge
number of times the simulation did not converge
integer(i4b) iout
file unit number for simulation output
character(len=linelength) simfile
simulation name file
character(len=lenmodelname), dimension(:), allocatable model_names
all model names in the (global) simulation
integer(i4b) iparamlog
input (idm) parameter logging to simulation listing file
character(len=linelength) simlstfile
simulation listing file name
integer(i4b) iunext
next file unit number to assign
integer(i4b) istdout
unit number for stdout
integer(i4b) isim_mode
simulation mode
integer(i4b) isimcnvg
simulation convergence flag (1) if all objects have converged, (0) otherwise