HYPE
Loading...
Searching...
No Matches
modvar.f90 File Reference

Data Types

type  modvar::stateconfigurationtype
type  modvar::statedimensiontype
type  modvar::simulationconfigurationtype
type  modvar::timeinformationtype
type  modvar::basintype
type  modvar::rrcqtype
type  modvar::rrcwtype
type  modvar::rrcw0type
type  modvar::iceseasonratingcurvetype
type  modvar::sectorratingcurvetype
type  modvar::riverratingtype
type  modvar::sedimentmanagementtype
type  modvar::damtype
type  modvar::outlettype
type  modvar::newlaketype
type  modvar::lakebasintype
type  modvar::lakesectiontype
type  modvar::floodtype
type  modvar::classbasintype
type  modvar::glaciertype
type  modvar::aquifertype
type  modvar::pathtype
type  modvar::branchtype
type  modvar::npcloadtype
type  modvar::depositiontype
type  modvar::t1loadtype
type  modvar::pointsourcedatatype
type  modvar::pointsourcetype
type  modvar::irrigationtype
type  modvar::watertransfertype
type  modvar::classtype
type  modvar::cropdatatype
type  modvar::cropirrdatatype
type  modvar::wetlandtype
type  modvar::soilleakagedatatype
type  modvar::outvaridtype
type  modvar::changeoutvartype
type  modvar::sourceapptype
type  modvar::modparidtype
type  modvar::updatetype

Modules

module  modvar

Procedures

subroutine modvar::allocate_outvar (nout, noutclass)
subroutine modvar::set_accload_to_zero ()
subroutine modvar::accumulate_class_load (isub, varindex, values)
subroutine modvar::accumulate_basin_load (isub, varindex, values)
subroutine modvar::deallocate_modvar (n)
subroutine modvar::deallocate_glacier ()
subroutine modvar::allocate_modelparameters (ns, nregpar)
subroutine modvar::allocate_basinvariables (ns)
subroutine modvar::initialize_simulation_configuration ()
subroutine modvar::allocate_initialize_modeloptions ()
character(len=2) function modvar::substance_name (i)
subroutine modvar::set_update_method_names ()
subroutine modvar::find_next_watertransfer (i, lastwt, wtindex)
subroutine modvar::find_next_pointsource (isb, lastps, nps, psdata, nextps)
subroutine modvar::set_xobsoutvarindex ()
subroutine modvar::initiate_xobsinformation (array, n)
subroutine modvar::save_xobsinformation (n, var2, ns)
subroutine modvar::set_recharge_discharge_classes (n, indata)
subroutine modvar::calculate_class_discharge_divisor ()
logical function modvar::isdischargeclass (j)
logical function modvar::isfirstdischargeclass (j)
subroutine modvar::set_soildepth_classdata (nlayer, depth, geoclassdata)
subroutine modvar::set_class_current_soildepth (nlayer, slc, depth)
subroutine modvar::set_coded_classes (dim, array, ilakearg, olakearg, lriverarg, mriverarg, iwetarg, owetarg)
real function, dimension(nsubst) modvar::get_current_soilleakage_memory (icl, isub, nsubst)
subroutine modvar::initiate_cropdata ()
subroutine modvar::set_cropdataindex (n, id, reg, cindex)
subroutine modvar::find_croppart (i, j, kcrop, row, part)
integer function modvar::get_current_petmodel (i)
logical function modvar::endofday (ts)
integer function modvar::get_pseudo_dayno (dn, latitude)
logical function modvar::in_season_end (begjd, endjd)
logical function modvar::in_season_period (begjd, period)
subroutine modvar::get_class_wet_deposition (i, ns, iluse, veg, conc)
subroutine modvar::set_class_deposition (i, ns, iluse, veg, source)
integer function modvar::get_deposition_vegindex (isubst, idep, veg, iluse)
integer function modvar::get_deposition_timeindex (isubst, idep)
subroutine modvar::find_lbtype (isub, ldtype)
subroutine modvar::find_lakebasins (isub, status)
subroutine modvar::check_connected_subbasins (i2, i3, isource, ibranch)
logical function modvar::is_upstream_lakebasin (ldtype)
subroutine modvar::sum_upstream_area (n, areasum)

Variables

character(len=24), parameter modvar::model_version_string = '5.35.0'
Miscellaneous constant parameters
integer, parameter modvar::max_classoutvar = 11
integer, parameter modvar::some_basinoutvar = 23
integer, parameter modvar::max_noutvar = 10000
integer, parameter modvar::maxsoillayers = 3
integer, parameter modvar::nrootzone = 2
integer, parameter modvar::max_pstype = 8
integer, parameter modvar::max_subid = 9999999
integer, parameter modvar::maxlakesections = 10
real, parameter modvar::missing_value = -9999.
real, parameter modvar::def_min = -1.1E38
real, parameter modvar::def_max = 1.1E38
real, parameter modvar::realzero = 1.E-37
double precision, parameter modvar::doublezero = 1.D-307
real, parameter modvar::pi = 3.1415927
real, parameter modvar::solar = 0.0820
real, parameter modvar::cwater = 4.2
real, parameter modvar::cice = 2.1
real, parameter modvar::lfreezing = 335.
real, parameter modvar::lfusion = 334000.
real, parameter modvar::kice = 2.2
real, parameter modvar::icedensity = 917.
real, parameter modvar::dice = 0.917
real, parameter modvar::waterdensity = 1000.
Model parameter dependence type parameters

These codes are used for identifying which model parameter-array to find a specific parameter in.

integer, parameter modvar::m_gpar = 1
integer, parameter modvar::m_spar = 2
integer, parameter modvar::m_lpar = 3
integer, parameter modvar::m_bpar = 4
integer, parameter modvar::m_rpar = 5
integer, parameter modvar::m_ldpar = 6
integer, parameter modvar::m_mpar = 7
integer, parameter modvar::nregiondivisions = 6
Output variable type parameters; code for accumulation of data

These codes are used to define how a period value of a variable is calculated.

integer, parameter modvar::i_sum = 0
integer, parameter modvar::i_mean = 1
integer, parameter modvar::i_wmean = 2
integer, parameter modvar::i_wmean2 = 3
integer, parameter modvar::i_end = 4
Output variable type parameters; code for class type

These codes are used to define if class values can be had.

integer, parameter modvar::i_notdef = 0
integer, parameter modvar::i_class = 1
Output variable type parameters; code for base area for upstream output calculation

These codes are used to define how to calculate upstream value.

integer, parameter modvar::i_basin = 1
integer, parameter modvar::i_land = 2
integer, parameter modvar::i_scale3 = 3
integer, parameter modvar::i_scale12 = 4
integer, parameter modvar::i_scale9 = 5
integer, parameter modvar::i_scale6 = 6
Output variable observation type parameters; code for observation variable
integer, parameter modvar::i_recvar = 1
integer, parameter modvar::i_regrec = 2
integer, parameter modvar::i_otherrec = 3
Global simulation time variables for the time resolution

These variables are used to retrieve the simulation time resolution set by the info file.

integer modvar::simtimestep = 0
character(len=4) modvar::simtimeunit = '?'
Variables for configuration of simulation

HYSS make available variables to hold information on the configuration of the simulation.

integer modvar::i_in
integer modvar::i_on
integer modvar::i_sp
integer modvar::i_pp
integer modvar::i_t1
integer modvar::i_t2
integer modvar::i_oc
integer modvar::i_ss
integer modvar::i_ae
integer modvar::i_dsi
integer modvar::i_asi
integer, parameter modvar::max_substances = 11
logical modvar::simulatesubstances
type(simulationconfigurationtypemodvar::simulate
type(stateconfigurationtypemodvar::conduct
logical modvar::irrunlimited
logical modvar::conductxoms
logical modvar::conductwb
logical modvar::conductregest
logical modvar::conductbasinpetmodel
logical modvar::conductbasinlocsoil
logical modvar::conductwarning
logical modvar::conducticecurve
logical modvar::conductdamconstruction
logical modvar::conductloadcrun
logical modvar::soiliniwet
real modvar::soilinipar
integer, parameter modvar::p_snowfall = 1
integer, parameter modvar::p_snowmelt = 2
integer, parameter modvar::p_lakeriverice = 3
integer, parameter modvar::p_petmodel = 4
integer, parameter modvar::p_deepgroundwater = 5
integer, parameter modvar::p_swtemperature = 6
integer, parameter modvar::p_snowevap = 7
integer, parameter modvar::p_growthstart = 8
integer, parameter modvar::p_floodplain = 9
integer, parameter modvar::p_snowdensity = 10
integer, parameter modvar::p_glacierini = 11
integer, parameter modvar::p_infiltration = 12
integer, parameter modvar::p_erosion = 13
integer, parameter modvar::p_wetland = 14
integer, parameter modvar::p_soilleakage = 15
integer, parameter modvar::p_snowfalldist = 16
integer, parameter modvar::p_frozensoil = 17
integer, parameter modvar::p_snowheat = 18
integer, parameter modvar::p_surfacerunoff = 19
integer, parameter modvar::p_connectivity = 20
integer, parameter modvar::p_siltation = 21
integer, parameter modvar::p_siltation2 = 22
integer, parameter modvar::p_sedresusp = 23
integer, parameter modvar::p_rivermodel = 24
integer, parameter modvar::p_diffusesource = 25
integer, parameter modvar::p_t2rivermodel = 26
integer, parameter modvar::p_redischarge = 27
integer, parameter modvar::p_t1model = 28
integer, parameter modvar::p_snowpackreset = 29
integer, parameter modvar::p_timedep_luse = 30
integer, parameter modvar::p_ocdevmodel = 31
integer, parameter modvar::p_layeredlake = 32
integer, parameter modvar::p_evapmodel = 33
integer, parameter modvar::num_modelprocess = 33
character(len=17), dimension(:), allocatable modvar::modeloptionname
integer, dimension(:), allocatable modvar::modeloption
integer, dimension(num_modelprocessmodvar::maxmodelsinoption
character(len=64), dimension(0:maxmodelsinoption(p_petmodel) -1) modvar::petmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowfall) -1) modvar::snowfallmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowfalldist) -1) modvar::snowfalldistmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowmelt) -1) modvar::snowmeltmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_lakeriverice) -1) modvar::lakerivericemodelnames
character(len=64), dimension(0:maxmodelsinoption(p_deepgroundwater) -1) modvar::deepgroundwatermodelnames
character(len=64), dimension(0:maxmodelsinoption(p_swtemperature) -1) modvar::swtemperaturemodelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowevap) -1) modvar::snowevapmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_growthstart) -1) modvar::growthstartmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_floodplain) -1) modvar::floodplainmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowdensity) -1) modvar::snowdensitymodelnames
character(len=64), dimension(0:maxmodelsinoption(p_glacierini) -1) modvar::glacierinimodelnames
character(len=64), dimension(0:maxmodelsinoption(p_infiltration) -1) modvar::infiltrationmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_erosion) -1) modvar::erosionmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_wetland) -1) modvar::wetlandmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_soilleakage) -1) modvar::soilleakmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_frozensoil) -1) modvar::frozensoilmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowheat) -1) modvar::snowheatmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_surfacerunoff) -1) modvar::surfacerunoffmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_connectivity) -1) modvar::connectivitymodelnames
character(len=64), dimension(0:maxmodelsinoption(p_siltation) -1) modvar::siltationmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_siltation2) -1) modvar::siltation2modelnames
character(len=64), dimension(0:maxmodelsinoption(p_sedresusp) -1) modvar::sedresuspmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_rivermodel) -1) modvar::rivermodelnames
character(len=64), dimension(0:maxmodelsinoption(p_diffusesource) -1) modvar::diffusesourcemodelnames
character(len=64), dimension(0:maxmodelsinoption(p_t2rivermodel) -1) modvar::t2rivermodelnames
character(len=64), dimension(0:maxmodelsinoption(p_redischarge) -1) modvar::redischargemodelnames
character(len=64), dimension(0:maxmodelsinoption(p_t1model) -1) modvar::t1modelnames
character(len=64), dimension(0:maxmodelsinoption(p_snowpackreset) -1) modvar::snowpackresetmodelnames
character(len=64), dimension(0:maxmodelsinoption(p_timedep_luse) -1) modvar::timedeplusenames
character(len=64), dimension(0:maxmodelsinoption(p_ocdevmodel) -1) modvar::ocdevelopmentmodels
character(len=64), dimension(0:maxmodelsinoption(p_layeredlake) -1) modvar::layeredlakenames
character(len=64), dimension(0:maxmodelsinoption(p_evapmodel) -1) modvar::evapmodelnames
Variables for input data

HYSS make available variables to hold input data for simulation, both static geographical data and time series data for forcing the model and for evaluation. Variables ending with suffix i are dependent on subbasin.

real, dimension(:), allocatable modvar::tempi
real, dimension(:), allocatable modvar::preci
real, dimension(:), allocatable modvar::qobsi
real, dimension(:), allocatable modvar::wobsi
real, dimension(:), allocatable modvar::xobsi
real, dimension(:), allocatable modvar::xoregobsi
real, dimension(:), allocatable modvar::xcgobsi
integer, dimension(:), allocatable modvar::wobsindex
integer, dimension(:,:), allocatable modvar::xobsindex
integer, dimension(:,:), allocatable modvar::xoregindex
integer, dimension(:,:,:), allocatable modvar::xcgobsindex
real, dimension(:), allocatable modvar::snowfraci
real, dimension(:), allocatable modvar::shortwavei
real, dimension(:), allocatable modvar::windi
real, dimension(:), allocatable modvar::uwindi
real, dimension(:), allocatable modvar::vwindi
real, dimension(:), allocatable modvar::humidi
real, dimension(:), allocatable modvar::tmini
real, dimension(:), allocatable modvar::tmaxi
type(basintype), dimension(:), allocatable modvar::basin
real, dimension(:), allocatable modvar::upstreamarea
real, dimension(:), allocatable modvar::landarea
real, dimension(:), allocatable modvar::tobselevation
real, dimension(:,:), allocatable modvar::tilefraction
type(damtype), dimension(:), allocatable modvar::dam
type(newlaketype), dimension(:), allocatable modvar::slake
type(lakebasintype), dimension(:), allocatable modvar::lakebasin
type(newlaketype), dimension(:), allocatable modvar::elake
type(lakesectiontype), dimension(:,:), allocatable modvar::lakesectiondata
type(pathtype), dimension(:), allocatable modvar::path
type(pathtype), dimension(:), allocatable modvar::pathsubid
type(branchtype), dimension(:), allocatable modvar::branchdata
type(branchtype), dimension(:), allocatable modvar::branchsubid
type(glaciertype), dimension(:), allocatable modvar::glacier
type(aquifertype), dimension(:), allocatable modvar::aquifer
type(npcloadtype), dimension(:), allocatable modvar::load
type(depositiontypemodvar::deposition
type(depositiontype), dimension(:), allocatable modvar::deposition2
type(t1loadtype), dimension(:), allocatable modvar::tload
type(pointsourcedatatype), dimension(:), allocatable modvar::psinfo
type(pointsourcetype), dimension(:), allocatable modvar::psload
type(pointsourcedatatype), dimension(:), allocatable modvar::absinfo
type(pointsourcetype), dimension(:), allocatable modvar::absload
type(classbasintype), dimension(:,:), allocatable modvar::classbasin
real, dimension(:,:,:), allocatable modvar::classbasin_wsf
type(classtype), dimension(:), allocatable modvar::classdata
type(cropdatatype), dimension(:), allocatable modvar::cropdata
type(cropirrdatatype), dimension(:), allocatable modvar::cropirrdata
type(irrigationtype), dimension(:), allocatable modvar::irrigationsystem
type(watertransfertype), dimension(:), allocatable modvar::watertransfer
type(wetlandtype), dimension(:,:), allocatable modvar::wetland
type(floodtype), dimension(:), allocatable modvar::flooding
type(soilleakagedatatypemodvar::soilleak
type(riverratingtype), dimension(:), allocatable modvar::rrcdata
integer, dimension(:), allocatable modvar::petmodel
integer, dimension(:,:), allocatable modvar::cropindex
integer, dimension(:), allocatable modvar::damindex
integer, dimension(:), allocatable modvar::lakeindex
integer, dimension(:), allocatable modvar::glacierindex
integer, dimension(:), allocatable modvar::lakebasinindex
integer, dimension(:), allocatable modvar::floodindex
integer, dimension(:), allocatable modvar::branchindex
logical, dimension(:), allocatable modvar::tloadexist
Variables for configuration of model set-up

HYSS make available variables to hold information on the configuration of the model set-up.

integer, parameter modvar::i_open = 1
integer, parameter modvar::i_forest = 2
integer, parameter modvar::i_water = 3
real, dimension(:,:), allocatable modvar::soildepth
real, dimension(:,:), allocatable modvar::soilthick
type(statedimensiontypemodvar::statesize
integer modvar::nsub
integer modvar::numsubstances
integer modvar::ncrop
integer modvar::nluse
integer modvar::nsoil
integer modvar::nclass
integer modvar::num_classgroup
integer modvar::numrotations
integer modvar::nevaplayers
integer modvar::nrechargeclasses
integer modvar::ndischargeclasses
integer, dimension(:), allocatable modvar::rechargeclasses
integer, dimension(:), allocatable modvar::dischargeclasses
real, dimension(:,:), allocatable modvar::rechargefraction
real, dimension(:), allocatable modvar::disdivisor
integer, dimension(:), allocatable modvar::regiondivision
integer, dimension(nregiondivisionsmodvar::nregions
integer modvar::naquifers
integer modvar::nglaciers
integer modvar::nwtransfer
integer modvar::npsused = 0
integer modvar::nabsused = 0
integer, parameter modvar::nrivertypes = 2
integer, parameter modvar::nlaketypes = 2
integer, parameter modvar::nlakelayer = 3
integer, parameter modvar::olake_model = 1
integer, parameter modvar::ilake_model = 2
integer, parameter modvar::lriver_model = 11
integer, parameter modvar::mriver_model = 12
integer, parameter modvar::iwet_model = 13
integer, parameter modvar::owet_model = 14
integer, parameter modvar::glacier_model = 3
integer, parameter modvar::traveltime_model = 5
integer, parameter modvar::rzleak_model = 6
integer, dimension(:,:), allocatable modvar::classmodel
integer modvar::slc_olake
integer modvar::slc_ilake
integer modvar::slc_lriver
integer modvar::slc_mriver
integer modvar::slc_iwet
integer modvar::slc_owet
Time variables

HYSS make available variables to hold information on time
during simulation run and for model set-up.

type(timeinformationtypemodvar::current_time
integer modvar::seconds_per_timestep
integer modvar::timesteps_per_day
logical modvar::firstoutstep
Output variables

HYSS make available variables to hold output values and information on output variables.

logical modvar::conductload
integer modvar::max_basinoutvar
integer modvar::num_basinsource
integer modvar::max_outvar
integer modvar::max_xobsoutvar
type(outvaridtype), dimension(:), allocatable modvar::outvarid
integer, dimension(:), allocatable modvar::xobsoutvarindex
integer, dimension(:), allocatable modvar::outvarxobsindex
integer modvar::noutvar
integer modvar::noutvarclass
logical, dimension(:), allocatable modvar::outvarstatus
real, dimension(:,:), allocatable modvar::outvar
integer, dimension(:), allocatable modvar::outvarindex
integer, dimension(:), allocatable modvar::outvarclassindex
real, dimension(:,:,:), allocatable modvar::outvarclassdata
real, dimension(:,:,:), allocatable modvar::outvarclassfraction
type(sourceapptypemodvar::accload
type(changeoutvartype), dimension(:), allocatable modvar::changecritvar
integer, dimension(:), allocatable modvar::obsfuncoutvar
character(len=6), dimension(max_classoutvar), parameter modvar::classloadheadings = ['WetAtm','DryAtm','Fertil','PDecay','RuralA','GrwSIn','IrrSrc','Runoff','RzLay3','RfLay3','RhLay3']
character(len=6), dimension(some_basinoutvar+1), parameter modvar::basinloadheadings = ['RuralB','Rgrwmr','Wtrans','Rgrwol','A ','B ','C ','D ','E ','F ','G ','H ','I ','J ','K ','L ','MA ','M ','N ','O ','P ','Q ','R ','S ']
Model parameter variables

HYSS make available variables to hold information on and values for model parameters.

integer modvar::max_par
type(modparidtype), dimension(:), allocatable modvar::modparid
real, dimension(:), allocatable modvar::genpar
real, dimension(:,:), allocatable modvar::basinpar
real, dimension(:,:), allocatable, target modvar::landpar
real, dimension(:,:), allocatable, target modvar::soilpar
real, dimension(:,:), allocatable, target modvar::regpar
real, dimension(:,:), allocatable, target modvar::monthpar
real, dimension(:,:), allocatable modvar::lakedatapar_ini
real, dimension(:,:), allocatable modvar::lakedatapar
integer, dimension(:,:), allocatable modvar::lakedataparindex
Parameters for updating; code and dimension.

Several updating methods exist. These can be used separately or together.

integer, parameter modvar::i_quseobs = 1
integer, parameter modvar::i_tpcorr = 2
integer, parameter modvar::i_wendupd = 3
integer, parameter modvar::i_qar = 4
integer, parameter modvar::i_war = 5
integer, parameter modvar::i_tncorr = 6
integer, parameter modvar::i_tnloccorr = 7
integer, parameter modvar::i_tploccorr = 8
integer, parameter modvar::i_cuseobs = 9
integer, parameter modvar::dim_update = 9
Variables for updating

HYSS make available variables to hold information on updating. Several different updating functions exist.

logical, dimension(dim_updatemodvar::doupdate
integer modvar::wobsvarindex
type(updatetype), dimension(dim_updatemodvar::useinupdate

Detailed Description

Contains module modvar.