36 INTEGER :: iv, i, SkipCounter, iFile
37 CHARACTER(len=50) :: FileN
38 INTEGER,
PARAMETER :: nFile = 13
39 CHARACTER(len=50),
DIMENSION(nFile) :: &
40 FileNames = [character(len=50) :: &
41 'SUEWS_NonVeg.txt',
'SUEWS_Veg.txt',
'SUEWS_Water.txt',
'SUEWS_Snow.txt', &
42 'SUEWS_Soil.txt',
'SUEWS_Conductance.txt',
'SUEWS_OHMCoefficients.txt', &
43 'SUEWS_ESTMCoefficients.txt',
'SUEWS_AnthropogenicEmission.txt',
'SUEWS_Irrigation.txt', &
44 'SUEWS_Profiles.txt',
'SUEWS_WithinGridWaterDist.txt',
'SUEWS_BiogenCO2.txt']
121 OPEN (55, file=
'RunControl.nml', err=200, status=
'old')
122 READ (55, nml=runcontrol, err=201)
129 IF (
diagnose == 1)
WRITE (*, *)
'Diagnosis switched on (model progress will be printed to screen)...'
141 WRITE (12, *)
'----- RunControl -----'
142 WRITE (12, nml=runcontrol)
189 WRITE (*, *)
'--------------------------------------------------------'
190 WRITE (*, *)
"LUMPS/SUEWS - relevant references"
191 WRITE (*, *)
"LUMPS - Grimmond and Oke (2002) JAM, 41, 79-810"
192 WRITE (*, *)
"OHM - Grimmond and Oke (1999) JAM, 38, 922-940"
193 WRITE (*, *)
"NARP - Offerle et al. (2003) JAM"
194 WRITE (*, *)
"SUES - Evaporation Grimmond & Oke (1991) WRR"
195 WRITE (*, *)
"Water Balance Model Grimmond et al. (1986) WRR"
196 WRITE (*, *)
"NARP - Long wave improvements (Loridan et al. 2011 JAMC)"
197 WRITE (*, *)
"SUEWS - Anthropogenic heat, etc (Jarvi et al. 2011 JH)"
198 WRITE (*, *)
"SUEWS - Snow module included (Jarvi et al. 2014 GMD)"
199 WRITE (*, *)
"SUEWS - v2016a release (Ward et al. 2016 UC)"
200 WRITE (*, *)
'--------------------------------------------------------'
206 WRITE (*, *)
'Reading the following input files:'
209 filen =
'SUEWS_SiteSelect.txt'
214 OPEN (21, file=trim(
fileinputpath)//trim(filen), err=300, status=
'old')
348SUBROUTINE readcoeff(FileName, nlines, ncolumns, HeaderFile, Coeff)
357 CHARACTER(len=*),
INTENT(in) :: FileName
358 INTEGER,
INTENT(in) :: nlines, ncolumns
359 CHARACTER(len=*),
INTENT(out) :: HeaderFile(ncolumns)
360 REAL(KIND(1D0)),
INTENT(out) :: Coeff(nlines, ncolumns)
365 INTEGER :: SkipCounter, iv, i, ii
373 READ (22, *) (headerfile(iv), iv=1, ncolumns)
376 READ (22, *) (coeff(i, iv), iv=1, ncolumns)
385 DO ii = i + 1, nlines
386 IF (coeff(i, 1) == coeff(ii, 1) .AND. i /= ii)
THEN
387 WRITE (*, *)
'Code', coeff(i, 1),
'in ', trim(
filename),
' not unique!'
413 CHARACTER(len=50) :: FileN
414 INTEGER :: SkipHeaderLines, RunNumber
415 INTEGER :: SkipCounter
419 OPEN (39, file=trim(
fileinputpath)//trim(filen), err=204, status=
'old')
421 IF (skipheaderlines > 0)
THEN
422 DO skipcounter = 1, skipheaderlines
423 READ (39, *, err=205)
430 READ (39, *, iostat=ios) runnumber
431 IF (ios < 0 .OR. runnumber == -9)
EXIT
1136 DO iii = 1, (
nsurf + 1)
1470 CHARACTER(len=20) :: GridName
1471 CHARACTER(len=4) :: year_txt
1472 INTEGER :: NumberOfGrids
1474 CHARACTER(len=150) :: fileInit
1475 INTEGER :: DaysSinceRain, Gridiv, &
1477 INTEGER :: wd, seas, date, mb, &
1478 year_int, switch = 0, &
1481 REAL(KIND(1D0)) :: PavedState, BldgsState, EveTrState, DecTrState, GrassState, BSoilState, WaterState, &
1482 SnowFracPaved, SnowFracBldgs, SnowFracEveTr, SnowFracDecTr, &
1483 SnowFracGrass, SnowFracBSoil, SnowFracWater, &
1484 SnowDensPaved, SnowDensBldgs, SnowDensEveTr, SnowDensDecTr, &
1485 SnowDensGrass, SnowDensBSoil, SnowDensWater
1487 INTEGER :: LeavesOutInitially
1488 INTEGER :: SnowInitially
1490 INTEGER :: GridsInitialised = 0
1491 INTEGER :: YearsInitialised = 0
1492 INTEGER :: dayofWeek_id(3)
1493 REAL(KIND(1D0)) :: NormalizeVegChar
1496 namelist /initialconditions/ dayssincerain, &
1499 leavesoutinitially, &
1556 dayssincerain = int(
nan)
1558 leavesoutinitially = int(
nan)
1582 snowinitially = int(
nan)
1614 WRITE (year_txt,
'(I4)') year_int
1617 fileinit = trim(
fileinputpath)//trim(
"InitialConditions")//trim(gridname)//
'.nml'
1620 fileinit = trim(
fileinputpath)//trim(
"InitialConditions")//trim(
filecode)//
'_'//trim(year_txt)//
'.nml'
1621 gridsinitialised = gridsinitialised + 1
1622 IF (gridsinitialised == numberofgrids)
THEN
1623 yearsinitialised = yearsinitialised + 1
1624 gridsinitialised = 0
1630 OPEN (56, file=trim(fileinit), err=600, status=
'old')
1631 READ (56, iostat=
ios_out, nml=initialconditions, err=601)
1637 WRITE (12, *)
'----- '//trim(
"InitialConditions")//trim(gridname)//
'.nml'//
' -----'
1638 WRITE (12, nml=initialconditions)
1648 IF (dayssincerain == int(
nan)) dayssincerain = 0
1655 IF (leavesoutinitially == int(
nan))
THEN
1671 ELSEIF (leavesoutinitially == 1)
THEN
1682 ELSEIF (leavesoutinitially == 0)
THEN
1694 CALL errorhint(36,
'LeavesOutInitially must be 0, 1, or -999 (or omitted from InitialConditions namelist)', &
1699 IF (pavedstate ==
nan) pavedstate = 0
1700 IF (bldgsstate ==
nan) bldgsstate = 0
1701 IF (evetrstate ==
nan) evetrstate = 0
1702 IF (dectrstate ==
nan) dectrstate = 0
1703 IF (grassstate ==
nan) grassstate = 0
1704 IF (bsoilstate ==
nan) bsoilstate = 0
1716 IF (
snowuse == 0 .OR. snowinitially == 0)
THEN
1746 ELSEIF (snowinitially == int(
nan))
THEN
1757 IF (snowfracpaved ==
nan .OR. snowfracbldgs ==
nan .OR. snowfracevetr ==
nan .OR. &
1758 snowfracdectr ==
nan .OR. snowfracgrass ==
nan .OR. snowfracbsoil ==
nan .OR. &
1759 snowfracwater ==
nan)
THEN
1762 IF (snowdenspaved ==
nan .OR. snowdensbldgs ==
nan .OR. snowdensevetr ==
nan .OR. &
1763 snowdensdectr ==
nan .OR. snowdensgrass ==
nan .OR. snowdensbsoil ==
nan .OR. &
1764 snowdenswater ==
nan)
THEN
1771 CALL errorhint(36,
'SnowInitially must be 0 or -999 (or omitted from InitialConditions namelist)', &
1903 IF (
diagnose == 1) print *,
'calling in initial state: SUEWS_Translate'
1907 IF (
diagnose == 1) print *,
'calling in initial state: SUEWS_cal_RoughnessParameters'
1924 year_int = year_int - 1
1936 IF (switch == 1)
THEN
1937 year_int = year_int + 1
1950 year_int = year_int + 1
1958 IF (switch == 1)
THEN
1984 state_surf = [pavedstate, bldgsstate, evetrstate, dectrstate, grassstate, bsoilstate, waterstate]
2016 INTEGER,
DIMENSION(nvegsurf) :: vegcol
2018 REAL(kind(1d0)) :: normvegresult
2060 CHARACTER(len=15) :: GridName
2061 CHARACTER(len=4) :: year_txt2
2062 INTEGER :: year_int2
2064 INTEGER :: ID_Prev_Out
2065 INTEGER :: nofDaysThisYear_ForOutput
2070 IF (
id == 1 .AND.
iy == (
year + 1))
THEN
2071 year_int2 = int(
year + 1)
2072 WRITE (year_txt2,
'(I4)') year_int2
2074 file=trim(
fileinputpath)//trim(
"InitialConditions")//trim(gridname)//
'_'//trim(adjustl(year_txt2))//
'.nml', &
2078 year_int2 = int(
year)
2079 WRITE (year_txt2,
'(I4)') year_int2
2081 file=trim(
fileinputpath)//trim(
"InitialConditions")//trim(gridname)//
'_'//trim(adjustl(year_txt2))//
'_EndofRun.nml', &
2083 nofdaysthisyear_foroutput =
id - 1
2085 id_prev_out = (
id - 1)
2091 WRITE (57, *)
'&InitialConditions'
2092 WRITE (57, *)
'DaysSinceRain=', int(
hdd_id(12))
2093 WRITE (57, *)
'Temp_C0=',
hdd_id(9)
2095 WRITE (57, *)
'GDD_1_0=',
gdd_id(1)
2096 WRITE (57, *)
'GDD_2_0=',
gdd_id(2)
2148 WRITE (57, *)
'SnowAlb0=',
snowalb
2160200
CALL errorhint(49, trim(
"InitialConditions")//trim(gridname)// &
2162201
CALL errorhint(49, trim(
"InitialConditions")//trim(gridname)// &
2183 INTEGER :: lunit, i, iyy
2184 INTEGER :: ReadlinesMetdata_read
2185 REAL(KIND(1D0)),
DIMENSION(24) :: MetArray
2186 REAL(KIND(1D0)) :: imin_prev, ih_prev, iday_prev, tstep_met, iy_only
2198 OPEN (lunit, file=trim(
filemet), status=
'old', err=314)
2211 DO i = 1, readlinesmetdata_read
2221 imin_prev = metarray(4)
2222 ih_prev = metarray(3)
2223 iday_prev = metarray(2)
2224 iy_only = metarray(1)
2225 ELSEIF (i == 2)
THEN
2226 tstep_met = ((metarray(4) + 60*metarray(3)) - (imin_prev + 60*ih_prev))*60
2227 IF (tstep_met /=
tstep_real .AND. metarray(2) == iday_prev)
THEN
2228 CALL errorhint(39,
'TSTEP in RunControl does not match TSTEP of met data (DOY).', real(
tstep, kind(1d0)), tstep_met, &
2235 IF (metarray(1) /= iy_only)
THEN
2236 IF (metarray(1) == iy_only + 1 .AND. metarray(2) == 1 .AND. metarray(3) == 0 .AND. metarray(4) == 0)
THEN
2239 CALL errorhint(3,
'Problem in SUEWS_Initial: multiple years found in met forcing file.', &
2291 ELSEIF (
lat < -40)
THEN
2305 ELSEIF (
lat < 10 .AND.
lat > -10)
THEN
2321 CALL errorhint(37,
'InitialCond: Check initial condition of building soil store.', &
2325 CALL errorhint(37,
'InitialCond: Check initial condition of paved soil store.', &
2329 CALL errorhint(37,
'InitialCond: Check initial condition of conif soil store.', &
2333 CALL errorhint(37,
'InitialCond: Check initial condition of deciduous soil store.', &
2337 CALL errorhint(37,
'InitialCond: Check initial condition of bare soil soil store.', &
2341 CALL errorhint(37,
'InitialCond: Check initial condition of grass soil store.', &
integer c_internal_rhocp5
integer c_internal_thick2
integer, dimension(5) c_wall_thick4_bldgs
integer, dimension(nvegsurf) c_gddfull
real(kind(1d0)), dimension(:, :), allocatable biogen_coeff
integer, dimension(5) c_internal_rhocp4_bldgs
integer, parameter bldgsurf
real(kind(1d0)), dimension(:, :), allocatable modeldailystate
real(kind(1d0)), dimension(nsurf) snowpack
integer, dimension(nsurfincsnow) c_surf_thick5
real(kind(1d0)), dimension(:, :), allocatable estmcoefficients_coeff
integer, dimension(nsurf) c_kkanohm
integer, dimension(5) c_surf_k3_bldgs
integer, parameter ncolumnssoil
real(kind(1d0)), dimension(:, :), allocatable tsfc_wall_grids
integer, parameter ncolumnssiteselect
integer, dimension(5) c_wall_thick1_bldgs
real(kind(1d0)), dimension(:, :), allocatable snow_coeff
integer, dimension(nsurfincsnow) c_surf_rhocp2
integer, dimension(24) c_hrproftraffwd
real(kind(1d0)), dimension(nsurf) soilstorecap_surf
real(kind(1d0)), dimension(:, :), allocatable siteselect
real(kind(1d0)), dimension(:, :), allocatable anthropogenic_coeff
integer, dimension(nsurf) c_cpanohm
integer, dimension(nsurfincsnow) c_ohmcode_wwet
integer, dimension(5) c_ch_iwall_bldgs
integer, dimension(5) c_internal_rhocp1_bldgs
real(kind(1d0)), dimension(:, :), allocatable wgwaterdist_coeff
integer, dimension(24) c_hrprofsnowcwe
integer, dimension(5) c_wall_k1_bldgs
integer, dimension(nsurfincsnow) c_ohmthresh_sw
real(kind(1d0)), dimension(:, :), allocatable tin_surf_grids
integer, dimension(nsurfincsnow) c_surf_k1
character(len=20), dimension(ncolumnsnonveg) headernonveg_file
integer, parameter conifsurf
integer, dimension(3) c_ie_a
integer c_tcriticcooling_we
integer, dimension(5) c_internal_thick3_bldgs
integer, dimension(nsurfincsnow) c_surf_thick4
character(len=20), dimension(ncolumnswgwaterdist) headerwgwaterdist_file
integer, dimension(5) c_internal_k3_bldgs
integer c_internal_rhocp2
integer c_internal_rhocp4
integer, dimension(3) c_surf_rhocp2_paved
integer, dimension(nvegsurf) c_sddfull
integer, dimension(nvegsurf) c_beta_bioco2
integer, dimension(nsurf) c_wgtorunoff
integer, dimension(nsurfincsnow) c_ohmcode_sdry
integer, dimension(nsurf) c_wgtograss
integer, dimension(nsurfincsnow) c_a2_swet
real(kind(1d0)), dimension(nsurf) state_surf
integer, dimension(5) c_surf_k1_bldgs
integer, dimension(nsurf) c_wgtobldgs
integer, dimension(nsurfincsnow) c_a1_wwet
real(kind(1d0)) porosity_id
integer, parameter ncolumnsconductance
integer, parameter ncolumnsohmcoefficients
integer, dimension(nvegsurf) c_gsmax
integer, dimension(nsurf) c_soilstcap
integer, dimension(nsurf) c_soildens
integer, dimension(nsurfincsnow) c_a1_swet
integer, dimension(nsurfincsnow) c_ohmcode_swet
integer, dimension(nsurf) c_soildepth
integer, dimension(5) c_surf_thick3_bldgs
integer, dimension(nsurf) c_wgtoevetr
integer, dimension(5) c_surf_rhocp2_bldgs
integer c_ahslopecooling_we
integer, dimension(24) c_hrprofenusewe
integer, dimension(7) c_daywatper
integer, dimension(5) c_surf_rhocp5_bldgs
integer, dimension(nsurf) c_soilinfrate
integer, dimension(5) c_ch_ibld_bldgs
integer, dimension(5) c_surf_rhocp4_bldgs
integer, dimension(5) c_internal_thick1_bldgs
integer, dimension(24) c_hrprofwuautowd
integer, dimension(nvegsurf) c_laimax
character(len=20), dimension(ncolumnswater) headerwater_file
character(len=20), dimension(ncolumnssnow) headersnow_file
integer, dimension(nsurfincsnow) c_a2_sdry
integer, dimension(nsurf) c_statelimit
integer, dimension(3) c_ie_m
integer c_tcriticheating_we
integer, dimension(nvegsurf) c_alpha_bioco2
integer, dimension(3) c_surf_k4_paved
real(kind(1d0)), dimension(nvegsurf) lai_id
integer, dimension(nsurf) c_drcoef2
integer, dimension(5) c_ch_iroof_bldgs
integer, dimension(nsurf) c_ksat
character(len=20), dimension(ncolumnsveg) headerveg_file
real(kind(1d0)), dimension(:, :), allocatable tsfc_roof_grids
integer c_ahslopecooling_wd
integer, dimension(nsurf) c_obssmmax
integer, dimension(nvegsurf) c_leafgp2
integer, dimension(nsurf) c_chanohm
integer, dimension(5) c_surf_thick2_bldgs
real(kind(1d0)), dimension(nsurf) sfr_surf
integer, dimension(5) c_internal_rhocp2_bldgs
integer, dimension(5) c_wall_k3_bldgs
integer, parameter ncolumnsprofiles
integer, dimension(5) c_wall_k5_bldgs
integer, dimension(nsurf) c_snowlimpat
integer, dimension(nsurfincsnow) c_ohmthresh_wd
real(kind(1d0)), dimension(nvegsurf) laimax
integer, dimension(nsurfincsnow) c_a3_wwet
integer, dimension(5) c_surf_rhocp1_bldgs
integer, dimension(3) c_surf_k5_paved
integer, dimension(nsurf) c_stormin
integer c_tcriticheating_wd
integer, dimension(7) c_daywat
integer, dimension(5) c_wall_rhocp1_bldgs
integer, parameter ncolumnswater
integer c_internal_thick3
real(kind(1d0)), dimension(nvegsurf) gdd_id
integer, dimension(24) c_hrprofsnowcwd
integer, dimension(5) c_wall_rhocp3_bldgs
integer, dimension(nsurfincsnow) c_a3_sdry
integer c_ahslopeheating_we
real(kind(1d0)) decidcap_id
integer, parameter ncolumnsanthropogenic
integer, dimension(5) c_surf_k2_bldgs
integer c_tcriticcooling_wd
integer, dimension(nsurfincsnow) c_surf_k5
integer c_internal_thick5
integer, parameter ncolumnsveg
integer, dimension(nsurf) c_wgtowater
real(kind(1d0)), dimension(nsurf) soilstore_surf
real(kind(1d0)), dimension(:, :), allocatable water_coeff
real(kind(1d0)), dimension(:, :), allocatable tsfc_surf_grids
integer, dimension(24) c_hrprofpopwe
integer, dimension(nsurfincsnow) c_surf_thick3
integer, dimension(nsurf) cmod_snowfrac
integer, dimension(nsurf) cmds_snowdens
integer, dimension(nsurfincsnow) c_ohmcode_wdry
integer, dimension(3) c_surf_k1_paved
real(kind(1d0)), dimension(:, :), allocatable nonveg_coeff
integer, dimension(nsurf) cmod_snowwaterstate
integer, dimension(5) c_surf_k5_bldgs
integer, dimension(nsurf) c_wgtosoilstore
integer, dimension(nvegsurf) c_laimin
integer, dimension(3) c_surf_rhocp4_paved
integer, dimension(nvegsurf) c_alpha_enh_bioco2
real(kind(1d0)), dimension(:, :), allocatable conductance_coeff
integer, dimension(24) c_hrprofpopwd
integer, parameter ncolumnsnonveg
integer, parameter ncolumnswgwaterdist
integer, dimension(nsurfincsnow) c_surf_thick1
integer, dimension(nsurf) c_wgtopaved
integer, dimension(5) c_internal_thick4_bldgs
integer, dimension(nsurfincsnow) c_a3_wdry
integer, dimension(24) c_hrprofwumanuwe
integer, dimension(nvegsurf) c_min_res_bioco2
integer, dimension(nvegsurf) c_resp_b
character(len=20), dimension(ncolumnssoil) headersoil_file
integer, dimension(5) c_internal_rhocp5_bldgs
real(kind(1d0)), dimension(:, :, :), allocatable metforcingdata
integer, dimension(nsurf) c_albmin
integer, dimension(5) c_internal_k5_bldgs
character(len=20), dimension(ncolumnsanthropogenic) headeranthropogenic_file
integer c_frfossilfuel_heat
integer, dimension(nsurf) c_obssmdepth
integer c_internal_thick4
integer, dimension(24) c_hrproftraffwe
integer, dimension(5) c_wall_rhocp5_bldgs
integer, dimension(24) c_hrprofwumanuwd
integer, dimension(5) c_surf_thick5_bldgs
integer, dimension(5) c_wall_k2_bldgs
integer, dimension(nsurfincsnow) c_a3_swet
real(kind(1d0)), dimension(:, :), allocatable surfacechar
integer, dimension(nsurf) cmod_snowpack
integer c_ahslopeheating_wd
real(kind(1d0)) albevetr_id
integer, parameter ivgrass
real(kind(1d0)), dimension(nsurf) snowwater
integer, dimension(3) c_surf_thick4_paved
integer, dimension(nsurf) c_stormax
integer, dimension(nsurfincsnow) c_surf_rhocp3
integer c_internal_rhocp3
integer, dimension(nsurf) c_snowlimrem
integer, dimension(3) c_surf_rhocp1_paved
integer c_frfossilfuel_nonheat
integer, dimension(nvegsurf) c_baset
integer, dimension(nsurf) c_emis
integer, dimension(nvegsurf) c_resp_a
integer, dimension(nsurfincsnow) c_surf_thick2
integer, dimension(5) c_nroom_bldgs
integer, dimension(5) c_internal_k2_bldgs
integer, dimension(5) c_internal_k4_bldgs
integer, dimension(5) c_surf_k4_bldgs
real(kind(1d0)), dimension(nvegsurf) laimin
integer c_internal_rhocp1
integer, dimension(24) c_hrprofhumactivitywe
character(len=20), dimension(ncolumnsohmcoefficients) headerohmcoefficients_file
integer, parameter ncolumnsestmcoefficients
integer, parameter watersurf
real(kind(1d0)), dimension(:, :), allocatable profiles_coeff
integer, parameter grasssurf
integer, dimension(3) c_surf_thick1_paved
character(len=20), dimension(ncolumnsprofiles) headerprofiles_file
integer, dimension(nsurfincsnow) c_estmcode
real(kind(1d0)), dimension(9) wuday_id
real(kind(1d0)) albdectr_id
integer, dimension(nsurf) cmod_soilstate
real(kind(1d0)), dimension(:, :), allocatable soil_coeff
integer, dimension(nsurfincsnow) c_surf_k3
character(len=20), dimension(ncolumnsirrigation) headerirrigation_file
integer, dimension(nvegsurf) c_biogenco2code
integer, dimension(3) c_surf_rhocp5_paved
integer, parameter ivdecid
integer c_internal_thick1
integer, dimension(5) c_surf_thick4_bldgs
integer, dimension(3) c_surf_thick2_paved
integer, parameter bsoilsurf
integer, dimension(5) c_surf_thick1_bldgs
real(kind(1d0)), dimension(nsurf) snowdens
integer, dimension(nsurfincsnow) c_surf_k2
integer, dimension(3) c_surf_rhocp3_paved
integer, dimension(nsurfincsnow) c_surf_rhocp5
integer, dimension(nsurf) c_wgtodectr
integer, dimension(5) c_internal_rhocp3_bldgs
integer, dimension(nsurf) c_soiltcode
real(kind(1d0)), dimension(:, :), allocatable ohmcoefficients_coeff
integer, dimension(nvegsurf) c_beta_enh_bioco2
integer, dimension(nvegsurf) c_porositymax
integer, parameter pavsurf
integer, dimension(5) c_em_ibld_bldgs
integer, dimension(3) c_surf_k3_paved
integer, dimension(nvegsurf) c_theta_bioco2
character(len=20), dimension(ncolumnsbiogen) headerbiogen_file
character(len=20), dimension(ncolumnssiteselect) headersiteselect_file
integer, dimension(nvegsurf) c_porositymin
integer, dimension(nvegsurf) c_leafgp1
integer, dimension(3) c_surf_thick5_paved
integer, dimension(nsurfincsnow) c_surf_k4
real(kind(1d0)), dimension(:, :), allocatable irrigation_coeff
integer, dimension(nsurf) c_obssnrfrac
integer, dimension(5) c_wall_thick5_bldgs
real(kind(1d0)), dimension(:, :, :), allocatable modeloutputdata
integer, dimension(5) c_alb_ibld_bldgs
integer, dimension(24) c_hrprofwuautowe
integer, dimension(nsurf) cmod_state
character(len=20), dimension(ncolumnsconductance) headercond_file
integer, parameter ivconif
integer, dimension(3) c_surf_thick3_paved
integer, dimension(nsurfincsnow) c_surf_rhocp1
integer, dimension(24) c_hrprofhumactivitywd
integer, parameter ncolumnsbiogen
integer, dimension(5) c_wall_rhocp4_bldgs
integer, dimension(nsurf) c_wgtobsoil
integer, dimension(nsurfincsnow) c_a1_wdry
character(len=20), dimension(ncolumnsestmcoefficients) headerestmcoefficients_file
integer, dimension(nsurfincsnow) c_a2_wdry
integer, dimension(nvegsurf) c_laieq
integer, parameter ncolumnsirrigation
real(kind(1d0)), dimension(:, :), allocatable veg_coeff
integer, dimension(5) c_wall_k4_bldgs
integer, dimension(nsurfincsnow) c_a1_sdry
integer, dimension(nsurfincsnow) c_surf_rhocp4
integer, dimension(nvegsurf) c_leafop1
integer, dimension(5) c_surf_rhocp3_bldgs
integer, dimension(nsurf) c_wetthresh
integer, dimension(5) c_internal_thick2_bldgs
integer, dimension(5) c_internal_k1_bldgs
integer, parameter ncolumnssnow
integer, dimension(nsurfincsnow) c_a2_wwet
real(kind(1d0)), dimension(12) hdd_id
integer, dimension(nvegsurf) c_leafop2
integer, dimension(5) c_internal_thick5_bldgs
integer, dimension(24) c_hrprofenusewd
integer, dimension(nsurf) c_dreq
integer, dimension(nsurf) c_albmax
integer, parameter decidsurf
integer, dimension(5) c_wall_rhocp2_bldgs
real(kind(1d0)) albgrass_id
integer, dimension(3) c_surf_k2_paved
real(kind(1d0)), dimension(nsurf) icefrac
integer, dimension(5) c_wall_thick2_bldgs
integer, dimension(nsurf) c_drcoef1
integer, dimension(nvegsurf) c_basete
real(kind(1d0)), dimension(nsurf) snowfrac
integer, dimension(5) c_wall_thick3_bldgs
integer cmds_laiinitialgrass
integer cmds_laiinitialevetr
integer cmds_dayssincerain
integer cmds_laiinitialdectr
subroutine update_wateruse(id, WaterUseMethod, DayofWeek_id, lat, FrIrriAuto, HDD_id, state_id, soilstore_id, SoilStoreCap, H_maintain, Ie_a, Ie_m, Ie_start, Ie_end, DayWatPer, DayWat, WUDay_id)
integer netradiationmethod
integer resolutionfilesin
character(len=20) filecode
integer resolutionfilesinestm
character(len=150) fileoutputpath
real(kind(1d0)), dimension(5) multrainamongnupperi
integer, dimension(5) multrainamongn
integer resolutionfilesout
character(len=150) filechoices
integer multiplelayoutfiles
integer skipheadersiteinfo
character(len=150) filemet
integer multipleinitfiles
integer keeptstepfilesout
integer storageheatmethod
character(len=150) fileinputpath
integer multipleestmfiles
integer roughlenmommethod
integer diagnosedisaggestm
real(kind(1d0)) faievetree
real(kind(1d0)) faidectree
integer nlinesohmcoefficients
integer nlineswgwaterdist
integer nlinesestmcoefficients
integer nlinesconductance
integer nlinesanthropogenic
real(kind(1d0)) porosity0
real(kind(1d0)) snowwaterbldgsstate
real(kind(1d0)) snowpackbsoil
real(kind(1d0)) snowpackgrass
real(kind(1d0)) snowwatergrassstate
real(kind(1d0)) soilstoredectrstate
real(kind(1d0)) decidcap0
real(kind(1d0)) laiinitialgrass
real(kind(1d0)) albdectr0
real(kind(1d0)) soilstorepavedstate
real(kind(1d0)) snowpackdectr
real(kind(1d0)) laiinitialevetr
real(kind(1d0)) snowpackevetr
real(kind(1d0)) soilstorebldgsstate
real(kind(1d0)) snowwaterbsoilstate
real(kind(1d0)) soilstoregrassstate
real(kind(1d0)) snowwaterdectrstate
real(kind(1d0)) snowwaterpavedstate
real(kind(1d0)) albevetr0
real(kind(1d0)) laiinitialdectr
real(kind(1d0)) snowwaterwaterstate
real(kind(1d0)) albgrass0
real(kind(1d0)) snowpackwater
real(kind(1d0)) snowpackbldgs
real(kind(1d0)) soilstoreevetrstate
real(kind(1d0)) snowwaterevetrstate
real(kind(1d0)) soilstorebsoilstate
real(kind(1d0)) snowpackpaved
subroutine suews_cal_roughnessparameters(RoughLenMomMethod, sfr_surf, bldgH, EveTreeH, DecTreeH, porosity_dectr, FAIBldg, FAIEveTree, FAIDecTree, z0m_in, zdm_in, Z, FAI, PAI, Zh, z0m, zdm, ZZD)
real(kind(1d0)), dimension(7) daywat
real(kind(1d0)) halftimestep
real(kind(1d0)) soildensity
real(kind(1d0)) tstep_real
real(kind(1d0)) soilrocks
real(kind(1d0)), dimension(3) ie_a
integer roughlenheatmethod
real(kind(1d0)), dimension(7) daywatper
real(kind(1d0)), dimension(3) ie_m
real(kind(1d0)) soildepthmeas
real(kind(1d0)) h_maintain
real(kind(1d0)) tstepcount
subroutine errorhint(errh, ProblemFile, VALUE, value2, valueI)
subroutine overallruncontrol
subroutine initializesurfacecharacteristics(Gridiv, rr)
subroutine initialstate(GridName, year_int, Gridiv, NumberOfGrids)
subroutine suews_initializemetdata(lunit, ReadlinesMetdata_read)
subroutine readcoeff(FileName, nlines, ncolumns, HeaderFile, Coeff)
real(kind(1d0)) function normalizevegchar(VegCol, Gridiv)
subroutine nextinitial(GridName, year_int)
subroutine numberrows(FileN, SkipHeaderLines)
subroutine suews_translateback(Gridiv, ir, irMax)
subroutine suews_translate(Gridiv, ir, iMB)
subroutine suews_cal_weekday(iy, id, lat, dayofWeek_id)
subroutine leapyearcalc(year_int, nroDays)
subroutine day_of_week(DATE, MONTH, YEAR, DOW)
subroutine day2month(b, mb, md, seas, year, latitude)