Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=dp), | public | :: | area | ||||
real(kind=dp), | public, | dimension(:), pointer | :: | data | |||
integer, | public | :: | day_irr_end | ||||
integer, | public | :: | day_irr_start | ||||
integer, | public | :: | fyr | ||||
real(kind=dp), | public | :: | irr_deficit_fac | ||||
integer, | public | :: | irr_eff_fac | ||||
integer, | public | :: | irr_opt | ||||
integer, | public | :: | irr_practice | ||||
real(kind=dp), | public, | dimension(:), pointer | :: | irrigationDemand | |||
integer, | public | :: | lyr | ||||
character(len=path_max_length), | public | :: | name | ||||
real(kind=dp), | public, | dimension(:), pointer | :: | plantDemand | |||
integer, | public | :: | subd | ||||
integer, | public | :: | subs | ||||
real(kind=dp), | public, | dimension(:), pointer | :: | supplied | |||
real(kind=dp), | public | :: | tr_eff | ||||
real(kind=dp), | public, | dimension(:), pointer | :: | tr_losses | Following variables are required for water users of type irrigation only wu_opt = 4 method to compute/read the daily irrigation demand |
||
integer, | public | :: | ts_ | ||||
integer, | public | :: | w_source | ||||
integer, | public | :: | wu_opt |
TYPE :: TWaterUser
! water transfer user name
character(len=path_max_length) :: name
! first year where water user is active
integer :: fyr
! last year where water user is active
integer :: lyr
! time step of input time series:
integer :: ts_
! 1 = constant monthly,
! 2 = monthly,
! 3 = daily
! water use option:
integer :: wu_opt
! 1 transfer (from subbasin x to subbasin y)
! 2 transfer (from subbasin x to external destination)
! 3 input (from external source to subbasin x)
! 4 agr = irrigation (agricultural use)
! subbasin number of source
integer :: subs
! subbasin number of destination
integer :: subd
! efficiency of transfer from one subbasin to another within the basin
real(dp) :: tr_eff
! 0 = 100% losses
! 1 = 0% losses
! area in m^2 only relevant for irrigation water users
real(dp) :: area
! daily time series of withdrawal or supply (read from time series input file)
! [m3 / s], dimension (number of days of simulation + 1)
real(dp), dimension(:), pointer :: data
! daily time series of plant water demand for irrigation
! [m3 / s], dimension (number of days of simulation + 1)
real(dp), dimension(:), pointer :: plantDemand
! daily time series of total irrigation demand, including losses due to irrigation practice
! [m3 / s], dimension (number of days of simulation + 1)
real(dp), dimension(:), pointer :: irrigationDemand
! daily time series of water supplied to this user, excluding transmission losses (calculated during simulation)
! [m3 / s]
real(dp), dimension(:), pointer :: supplied
! daily time series of water transmission losses (calculated during simulation)
! [m3 / s]
real(dp), dimension(:), pointer :: tr_losses
!-------------------------------------------------------------------
! Following variables are required for water users of type irrigation only
! wu_opt = 4
!-------------------------------------------------------------------
! method to compute/read the daily irrigation demand
integer :: irr_opt
! 1 = get daily values from input time series (format as indicated by ts_)
! 2 = compute demand from deficit method 1
! 3 = compute demand from deficit method 2
! 4 = compute demand from deficit method 3
! 1 = sprinkler irrigation
integer :: irr_practice
! 2 = drip irrigation
! Factor of deficit irrigation. 1. = no deficit irrigation: < 1. = deficit irrigation
real(dp) :: irr_deficit_fac
! julian day (day of year) indicating the start of the irrigation period
integer :: day_irr_start
! julian day (day of year) indicating the end of the irrigation period
integer :: day_irr_end
! source of water: 1 = river; 2 = ground water; 3 = both
integer :: w_source
integer :: irr_eff_fac
!-------------------------------------------------------------------
END TYPE TWaterUser