14 USE mo_kind,
ONLY : dp
70 SUBROUTINE snow_accum_melt(deg_day_incr, deg_day_max, deg_day_noprec, prec, temperature, temperature_thresh, thrfall, &
71 snow_pack, deg_day, melt, prec_effect, rain, snow)
75 REAL(dp),
INTENT(IN) :: deg_day_incr
78 REAL(dp),
INTENT(IN) :: deg_day_max
81 REAL(dp),
INTENT(IN) :: deg_day_noprec
84 REAL(dp),
INTENT(IN) :: prec
87 REAL(dp),
INTENT(IN) :: temperature
90 REAL(dp),
INTENT(IN) :: temperature_thresh
93 REAL(dp),
INTENT(IN) :: thrfall
96 REAL(dp),
INTENT(INOUT) :: snow_pack
99 REAL(dp),
INTENT(OUT) :: deg_day
102 REAL(dp),
INTENT(OUT) :: melt
105 REAL(dp),
INTENT(OUT) :: prec_effect
108 REAL(dp),
INTENT(OUT) :: rain
111 REAL(dp),
INTENT(OUT) :: snow
118 if(temperature > temperature_thresh)
then
127 if (prec <= (deg_day_max - deg_day_noprec) / deg_day_incr)
then
128 deg_day = deg_day_noprec + deg_day_incr * prec
130 deg_day = deg_day_max
134 if (temperature > temperature_thresh)
then
136 if (snow_pack > 0.0_dp)
then
137 aux_help = deg_day * (temperature - temperature_thresh)
138 if (aux_help > snow_pack)
then
143 snow_pack = snow_pack - aux_help
152 snow_pack = snow_pack + snow
156 prec_effect = melt + rain
Snow melting and accumulation.
subroutine, public snow_accum_melt(deg_day_incr, deg_day_max, deg_day_noprec, prec, temperature, temperature_thresh, thrfall, snow_pack, deg_day, melt, prec_effect, rain, snow)
Snow melting and accumulation.