1 SUBROUTINE snfrac (SNEQV,IVEGx,SNCOVR)
17 integer,
intent(in) :: IVEGx
18 REAL,
intent(in) :: SNEQv
19 REAL,
intent(out) :: SNCOVR
20 REAL SALP,SNUP(20),RSNOW
24 DATA snup /0.080, 0.080, 0.080, 0.080, 0.080, 0.020, &
25 & 0.020, 0.060, 0.040, 0.020, 0.010, 0.020, &
26 & 0.020, 0.020, 0.013, 0.013, 0.010, 0.020, &
34 IF ( iveg > 20 .or. iveg < 1 )
then
38 IF (sneqv < snup(iveg))
THEN
39 rsnow = sneqv/snup(iveg)
40 sncovr = 1. - (exp(-salp*rsnow) - rsnow*exp(-salp))
44 sncovr = max(0.,min(sncovr,1.))