6 SUBROUTINE wet_leaves_frac(PWRM, PVEG, PWRMAX_CF, PZ0, PLAI, PWRMAX, PDELTA)
58 REAL,
DIMENSION(:),
INTENT(IN) :: PWRM
62 REAL,
DIMENSION(:),
INTENT(IN) :: PVEG, PWRMAX_CF, PLAI, PZ0
70 REAL,
DIMENSION(:),
INTENT(OUT) :: PWRMAX
74 REAL,
DIMENSION(:),
INTENT(OUT) :: PDELTA
84 REAL,
DIMENSION(SIZE(PVEG)) :: ZCOEF, &
92 REAL(KIND=JPRB) :: ZHOOK_HANDLE
98 IF (
lhook)
CALL dr_hook(
'WET_LEAVES_FRAC',0,zhook_handle)
108 pwrmax(:) = pwrmax_cf(:) * pveg(:) * plai(:)
110 zwr(:) = min(pwrm(:),pwrmax(:))
112 WHERE (pveg(:)>0. .AND. pwrmax>0.)
118 zdelta_low(:) = ( zwr(:)/pwrmax(:) )**(2./3.)
133 zcoef(:) = 1. + 2.*plai(:)
135 zdelta_high(:) = zwr(:)/( (1.-zcoef(:))*zwr(:) + zcoef(:)*pwrmax(:) )
141 zcoef(:) = max(min(2.*pz0(:)-1. ,1.),0.)
143 pdelta(:) = (1.-zcoef(:)) * zdelta_low(:) + zcoef(:) * zdelta_high(:)
148 IF (
lhook)
CALL dr_hook(
'WET_LEAVES_FRAC',1,zhook_handle)
subroutine wet_leaves_frac(PWRM, PVEG, PWRMAX_CF, PZ0, PLAI, PWRMAX, PDELTA)