6 SUBROUTINE veg( PSW_RAD, PTA, PQA, PPS, PRGL, PLAI, PRSMIN, &
62 USE modd_isba_par
, ONLY : xrs_max, xdenom_min
74 REAL,
DIMENSION(:),
INTENT(IN) :: PSW_RAD, PTA, PQA, PPS
80 REAL,
DIMENSION(:),
INTENT(IN) :: PRGL, PLAI, PRSMIN, PGAMMA
86 REAL,
DIMENSION(:),
INTENT(IN) :: PF2
87 REAL,
DIMENSION(:),
INTENT(OUT) :: PRS
92 REAL,
DIMENSION(SIZE(PSW_RAD)) :: ZF, ZF1, ZF2, ZF3, ZF4
96 REAL,
DIMENSION(SIZE(PSW_RAD)) :: ZQSAT
102 REAL,
PARAMETER :: ZFACTR_MIN = 1.e-3
104 REAL,
PARAMETER :: ZRS_MIN = 1.e-4
106 REAL(KIND=JPRB) :: ZHOOK_HANDLE
117 zf(:) = 0.55*2.*psw_rad(:) / (prgl(:)+ xdenom_min ) / ( plai(:)+ xdenom_min )
119 zf1(:) = ( zf(:) + prsmin(:)/xrs_max) /( 1. + zf(:) )
120 zf1(:) = max( zf1(:), xdenom_min )
134 zf2(:) = max(xdenom_min,pf2(:))
147 zqsat(:) =
qsat(pta(:),pps(:))
149 zf3(:) = max( 1. - pgamma(:)*( zqsat(:) - pqa(:) )*1000. , zfactr_min )
158 zf4(:) = max( 1.0 - 0.0016*(298.15-pta(:))**2, zfactr_min )
168 prs(:) = prsmin(:) / ( plai(:)+ xdenom_min ) &
169 / zf1(:) / zf2(:) /zf3(:) / zf4(:)
171 prs(:) = min( prs(:), xrs_max)
172 prs(:) = max( prs(:), zrs_min)
subroutine veg(PSW_RAD, PTA, PQA, PPS, PRGL, PLAI, PRSMIN, PGAMMA, PF2, PRS)