7 prootfrac, pwsat, pwfc, pwwilt, &
8 pwg, pwgi, kwg_layer, pf2wght, pf5 )
61 USE yomhook
,ONLY : lhook, dr_hook
62 USE parkind1
,ONLY : jprb
69 CHARACTER(LEN=*),
INTENT(IN) :: hisba
74 REAL,
DIMENSION(:,:),
INTENT(IN) :: prootfrac, pwsat, pwfc, pwwilt, &
83 INTEGER,
DIMENSION(:),
INTENT(IN) :: kwg_layer
86 REAL,
DIMENSION(:),
INTENT(OUT) :: pf2
88 REAL,
DIMENSION(:),
INTENT(OUT) :: pf5
91 REAL,
DIMENSION(:,:),
INTENT(OUT):: pf2wght
97 REAL,
DIMENSION(SIZE(PWFC,1)) :: zwfc_avgz, zwsat_avgz, zwwilt_avgz
104 REAL,
DIMENSION(SIZE(PWG,1)) :: zwsat, zwfc, zwwilt,zf2wght
112 INTEGER :: ini, inl, jj, jl, idepth
117 REAL(KIND=JPRB) :: zhook_handle
124 IF (lhook) CALL dr_hook(
'SOILSTRESS',0,zhook_handle)
127 inl=maxval(kwg_layer(:))
151 IF(hisba ==
'DIF')
THEN
161 zwsat(:) = pwsat(:,1) - pwgi(:,1)
162 zwfc(:) = pwfc(:,1) * zwsat(:)/pwsat(:,1)
163 zwwilt(:) = pwwilt(:,1) * zwsat(:)/pwsat(:,1)
166 pf2wght(:,1) = max(xdenom_min,min(1.0,(pwg(:,1)-zwwilt(:))/(zwfc(:)-zwwilt(:))))
167 zf2wght(:) = max( 0.0,min(1.0,(pwg(:,1)-zwwilt(:))/(zwfc(:)-zwwilt(:))))
170 pf2wght(:,1) = prootfrac(:,1)*pf2wght(:,1)
171 zf2wght(:) = prootfrac(:,1)*zf2wght(:)
187 zwsat(jj) = pwsat(jj,jl) - pwgi(jj,jl)
188 zwfc(jj) = pwfc(jj,jl) * zwsat(jj)/pwsat(jj,jl)
189 zwwilt(jj) = pwwilt(jj,jl) * zwsat(jj)/pwsat(jj,jl)
192 zrootfracn = prootfrac(jj,jl) - prootfrac(jj,jl-1)
197 pf2wght(jj,jl) = max(xdenom_min,min(1.0,(pwg(jj,jl)-zwwilt(jj))/(zwfc(jj)-zwwilt(jj))))
198 zf2wght(jj) = max( 0.0,min(1.0,(pwg(jj,jl)-zwwilt(jj))/(zwfc(jj)-zwwilt(jj))))
201 pf2wght(jj,jl) = zrootfracn*pf2wght(jj,jl)
202 zf2wght(jj) = zrootfracn*zf2wght(jj)
205 pf2(jj) = pf2(jj) + zf2wght(jj)
221 zwsat_avgz(:) = pwsat(:,1) - pwgi(:,2)
222 zwfc_avgz(:) = pwfc(:,1)*zwsat_avgz(:)/pwsat(:,1)
223 zwwilt_avgz(:) = pwwilt(:,1)*zwsat_avgz(:)/pwsat(:,1)
227 pf2(:) = (pwg(:,2)-zwwilt_avgz(:))/(zwfc_avgz(:)-zwwilt_avgz(:))
228 pf2(:) = max(0.0,min(1.0, pf2(:)))
237 IF (lhook) CALL dr_hook(
'SOILSTRESS',1,zhook_handle)
subroutine soilstress(HISBA, PF2, PROOTFRAC, PWSAT, PWFC, PWWILT, PWG, PWGI, KWG_LAYER, PF2WGHT, PF5)