|
SURFEX v7.3
General documentation of Surfex
|
00001 !############################# 00002 SUBROUTINE AVERAGE_DIAG_EVAP_ISBA_n(PRAIN,PSNOW) 00003 !############################# 00004 ! 00005 ! 00006 !!**** *AVERAGE_DIAG_EVAP_ISBA_n* 00007 !! 00008 !! PURPOSE 00009 !! ------- 00010 ! Average the cumulated diagnostics from all ISBA tiles 00011 ! 00012 !!** METHOD 00013 !! ------ 00014 ! 00015 !! EXTERNAL 00016 !! -------- 00017 !! 00018 !! IMPLICIT ARGUMENTS 00019 !! ------------------ 00020 !! 00021 !! 00022 !! REFERENCE 00023 !! --------- 00024 !! 00025 !! AUTHOR 00026 !! ------ 00027 !! P. Le Moigne * Meteo-France * 00028 !! 00029 !! MODIFICATIONS 00030 !! ------------- 00031 !! Original 11/03 00032 !! B. Decharme 2008 New diag for the water budget 00033 !! B. Decharme 2012 New diag for snow 00034 !! carbon 00035 !! isab water budget 00036 !------------------------------------------------------------------------------- 00037 ! 00038 !* 0. DECLARATIONS 00039 ! ------------ 00040 ! 00041 USE MODD_ISBA_n, ONLY : XPATCH, LGLACIER 00042 USE MODD_DIAG_EVAP_ISBA_n, ONLY : XRNC, XAVG_RNC, XHC, XAVG_HC, & 00043 XLEC, XAVG_LEC, XGFLUXC, XAVG_GFLUXC, & 00044 XLEIC, XAVG_LEIC, & 00045 XLEG, XLEGC, XAVG_LEG, XAVG_LEGC, & 00046 XLEGI, XLEGIC, XAVG_LEGI, XAVG_LEGIC, & 00047 XLEV, XLEVC, XAVG_LEV, XAVG_LEVC, & 00048 XLES, XLESC, XAVG_LES, XAVG_LESC, & 00049 XLESL, XLESLC, XAVG_LESL, XAVG_LESLC, & 00050 XLER, XLERC, XAVG_LER, XAVG_LERC, & 00051 XLETR, XLETRC, XAVG_LETR, XAVG_LETRC, & 00052 XEVAP, XEVAPC, XAVG_EVAP, XAVG_EVAPC, & 00053 XDRAIN, XDRAINC, XAVG_DRAIN, XAVG_DRAINC, & 00054 XRUNOFF, XRUNOFFC, XAVG_RUNOFF, XAVG_RUNOFFC, & 00055 XMELT, XMELTC, XAVG_MELT, XAVG_MELTC, & 00056 LSURF_EVAP_BUDGET, LSURF_BUDGETC, & 00057 LWATER_BUDGET, & 00058 XHORT, XHORTC, XAVG_HORT, XAVG_HORTC, & 00059 XDRIP, XDRIPC, XAVG_DRIP, XAVG_DRIPC, & 00060 XIFLOOD, XIFLOODC, XAVG_IFLOOD, XAVG_IFLOODC, & 00061 XPFLOOD, XPFLOODC, XAVG_PFLOOD, XAVG_PFLOODC, & 00062 XLE_FLOOD, XLE_FLOODC, XAVG_LE_FLOOD, & 00063 XAVG_LE_FLOODC, XLEI_FLOOD, XLEI_FLOODC, & 00064 XAVG_LEI_FLOOD, XAVG_LEI_FLOODC, & 00065 XICEFLUXC, XAVG_ICEFLUXC, & 00066 XRRVEG, XRRVEGC, XAVG_RRVEG, XAVG_RRVEGC, & 00067 XIRRIG_FLUX, XIRRIG_FLUXC, XAVG_IRRIG_FLUX, & 00068 XAVG_IRRIG_FLUXC, & 00069 XGPP,XGPPC,XAVG_GPP,XAVG_GPPC, XRESP_AUTO, & 00070 XRESPC_AUTO,XAVG_RESP_AUTO,XAVG_RESPC_AUTO, & 00071 XRESP_ECO,XRESPC_ECO,XAVG_RESP_ECO, & 00072 XAVG_RESPC_ECO,XDWG,XDWGC,XAVG_DWG,XAVG_DWGC, & 00073 XDWGI,XDWGIC,XAVG_DWGI,XAVG_DWGIC, & 00074 XDWR,XDWRC,XAVG_DWR,XAVG_DWRC, & 00075 XDSWE,XDSWEC,XAVG_DSWE,XAVG_DSWEC, & 00076 XRAINFALL,XRAINFALLC,XSNOWFALL,XSNOWFALLC, & 00077 XWATBUD,XWATBUDC,XAVG_WATBUD,XAVG_WATBUDC 00078 ! 00079 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00080 USE PARKIND1 ,ONLY : JPRB 00081 ! 00082 IMPLICIT NONE 00083 ! 00084 !* 0.1 declarations of arguments 00085 ! 00086 REAL, DIMENSION(:), INTENT(IN) :: PRAIN ! rainfall rate 00087 REAL, DIMENSION(:), INTENT(IN) :: PSNOW ! snowfall rate 00088 ! 00089 ! 00090 !* 0.2 declarations of local variables 00091 ! 00092 INTEGER :: JPATCH ! tile loop counter 00093 INTEGER :: JJ 00094 REAL, DIMENSION(SIZE(XPATCH,1)) :: ZSUMPATCH 00095 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00096 !------------------------------------------------------------------------------- 00097 ! 00098 ! 0. Initialization 00099 ! -------------- 00100 ! 00101 ! 00102 IF (LHOOK) CALL DR_HOOK('AVERAGE_DIAG_EVAP_ISBA_N',0,ZHOOK_HANDLE) 00103 ZSUMPATCH(:) = 0. 00104 DO JPATCH=1,SIZE(XPATCH,2) 00105 DO JJ=1,SIZE(XPATCH,1) 00106 ZSUMPATCH(JJ) = ZSUMPATCH(JJ) + XPATCH(JJ,JPATCH) 00107 ENDDO 00108 ENDDO 00109 ! 00110 ! 1. Surface Energy fluxes 00111 ! ----------------------- 00112 ! 00113 IF (LSURF_EVAP_BUDGET) THEN 00114 ! 00115 XAVG_LEG (:) = 0. 00116 XAVG_LEGI (:) = 0. 00117 XAVG_LEV (:) = 0. 00118 XAVG_LES (:) = 0. 00119 XAVG_LESL (:) = 0. 00120 XAVG_LER (:) = 0. 00121 XAVG_LETR (:) = 0. 00122 XAVG_EVAP (:) = 0. 00123 XAVG_DRAIN (:) = 0. 00124 XAVG_RUNOFF (:) = 0. 00125 XAVG_HORT (:) = 0. 00126 XAVG_DRIP (:) = 0. 00127 XAVG_RRVEG (:) = 0. 00128 XAVG_MELT (:) = 0. 00129 XAVG_IFLOOD (:) = 0. 00130 XAVG_PFLOOD (:) = 0. 00131 XAVG_LE_FLOOD (:) = 0. 00132 XAVG_LEI_FLOOD (:) = 0. 00133 XAVG_IRRIG_FLUXC(:) = 0. 00134 XAVG_GPP (:) = 0. 00135 XAVG_RESP_AUTO (:) = 0. 00136 XAVG_RESP_ECO (:) = 0. 00137 ! 00138 DO JPATCH=1,SIZE(XPATCH,2) 00139 !cdir nodep 00140 DO JJ=1,SIZE(ZSUMPATCH) 00141 IF (ZSUMPATCH(JJ) > 0.) THEN 00142 ! 00143 ! Latent heat of evaporation over the ground 00144 ! 00145 XAVG_LEG(JJ) = XAVG_LEG(JJ) + XPATCH(JJ,JPATCH) * XLEG(JJ,JPATCH) 00146 ! 00147 ! Surface soil ice sublimation 00148 ! 00149 XAVG_LEGI(JJ) = XAVG_LEGI(JJ) + XPATCH(JJ,JPATCH) * XLEGI(JJ,JPATCH) 00150 ! 00151 ! Latent heat of evaporation over vegetation 00152 ! 00153 XAVG_LEV(JJ) = XAVG_LEV(JJ) + XPATCH(JJ,JPATCH) * XLEV(JJ,JPATCH) 00154 ! 00155 ! Latent heat of sublimation over snow 00156 ! 00157 XAVG_LES(JJ) = XAVG_LES(JJ) + XPATCH(JJ,JPATCH) * XLES(JJ,JPATCH) 00158 ! 00159 ! Latent heat of evaporation of liquid water over snow 00160 ! 00161 XAVG_LESL(JJ) = XAVG_LESL(JJ) + XPATCH(JJ,JPATCH) * XLESL(JJ,JPATCH) 00162 ! 00163 ! Evaporation from canopy water interception 00164 ! 00165 XAVG_LER(JJ) = XAVG_LER(JJ) + XPATCH(JJ,JPATCH) * XLER(JJ,JPATCH) 00166 ! 00167 ! Evapotranspiration of the vegetation 00168 ! 00169 XAVG_LETR(JJ) = XAVG_LETR(JJ) + XPATCH(JJ,JPATCH) * XLETR(JJ,JPATCH) 00170 ! 00171 ! Evapotranspiration 00172 ! 00173 XAVG_EVAP(JJ) = XAVG_EVAP(JJ) + XPATCH(JJ,JPATCH) * XEVAP(JJ,JPATCH) 00174 ! 00175 ! Soil drainage flux 00176 ! 00177 XAVG_DRAIN(JJ) = XAVG_DRAIN(JJ) + XPATCH(JJ,JPATCH) * XDRAIN(JJ,JPATCH) 00178 ! 00179 ! Supersaturation runoff 00180 ! 00181 XAVG_RUNOFF(JJ) = XAVG_RUNOFF(JJ) + XPATCH(JJ,JPATCH) * XRUNOFF(JJ,JPATCH) 00182 ! 00183 ! Horton runoff 00184 ! 00185 XAVG_HORT(JJ) = XAVG_HORT(JJ) + XPATCH(JJ,JPATCH) * XHORT(JJ,JPATCH) 00186 ! 00187 ! Vegetation dripping 00188 ! 00189 XAVG_DRIP(JJ) = XAVG_DRIP(JJ) + XPATCH(JJ,JPATCH) * XDRIP(JJ,JPATCH) 00190 ! 00191 ! Precipitation intercepted by the vegetation 00192 ! 00193 XAVG_RRVEG(JJ) = XAVG_RRVEG(JJ) + XPATCH(JJ,JPATCH) * XRRVEG(JJ,JPATCH) 00194 ! 00195 ! Snow melt 00196 ! 00197 XAVG_MELT(JJ) = XAVG_MELT(JJ) + XPATCH(JJ,JPATCH) * XMELT(JJ,JPATCH) 00198 ! 00199 ! Flood infiltartion 00200 ! 00201 XAVG_IFLOOD(JJ) = XAVG_IFLOOD(JJ) + XPATCH(JJ,JPATCH) * XIFLOOD(JJ,JPATCH) 00202 ! 00203 ! Precipitation intercepted by the floodplains 00204 ! 00205 XAVG_PFLOOD(JJ) = XAVG_PFLOOD(JJ) + XPATCH(JJ,JPATCH) * XPFLOOD(JJ,JPATCH) 00206 ! 00207 ! Floodplains evaporation 00208 ! 00209 XAVG_LE_FLOOD (JJ) = XAVG_LE_FLOOD (JJ) + XPATCH(JJ,JPATCH) * XLE_FLOOD (JJ,JPATCH) 00210 XAVG_LEI_FLOOD(JJ) = XAVG_LEI_FLOOD(JJ) + XPATCH(JJ,JPATCH) * XLEI_FLOOD(JJ,JPATCH) 00211 ! 00212 ! irrigation rate (as soil input) 00213 ! 00214 XAVG_IRRIG_FLUX(JJ) = XAVG_IRRIG_FLUX(JJ) + XPATCH(JJ,JPATCH) * XIRRIG_FLUX(JJ,JPATCH) 00215 ! 00216 ! Gross primary production 00217 ! 00218 XAVG_GPP(JJ) = XAVG_GPP(JJ) + XPATCH(JJ,JPATCH) * XGPP(JJ,JPATCH) 00219 ! 00220 ! Autotrophic respiration 00221 ! 00222 XAVG_RESP_AUTO(JJ) = XAVG_RESP_AUTO(JJ) + XPATCH(JJ,JPATCH) * XRESP_AUTO(JJ,JPATCH) 00223 ! 00224 ! Ecosystem respiration 00225 ! 00226 XAVG_RESP_ECO(JJ) = XAVG_RESP_ECO(JJ) + XPATCH(JJ,JPATCH) * XRESP_ECO(JJ,JPATCH) 00227 ! 00228 ENDIF 00229 END DO 00230 ENDDO 00231 ! 00232 ! Isba water budget and reservoir time tendencies 00233 ! 00234 IF(LWATER_BUDGET)THEN 00235 ! 00236 XRAINFALL (:) = PRAIN(:) 00237 XSNOWFALL (:) = PSNOW(:) 00238 XAVG_DWG (:) = 0.0 00239 XAVG_DWGI (:) = 0.0 00240 XAVG_DWR (:) = 0.0 00241 XAVG_DSWE (:) = 0.0 00242 XAVG_WATBUD(:) = 0.0 00243 ! 00244 DO JPATCH=1,SIZE(XPATCH,2) 00245 ! cdir nodep 00246 DO JJ=1,SIZE(ZSUMPATCH) 00247 IF (ZSUMPATCH(JJ) > 0.) THEN 00248 ! 00249 XAVG_DWG (JJ) = XAVG_DWG (JJ) + XPATCH(JJ,JPATCH) * XDWG (JJ,JPATCH) 00250 XAVG_DWGI (JJ) = XAVG_DWGI (JJ) + XPATCH(JJ,JPATCH) * XDWGI (JJ,JPATCH) 00251 XAVG_DWR (JJ) = XAVG_DWR (JJ) + XPATCH(JJ,JPATCH) * XDWR (JJ,JPATCH) 00252 XAVG_DSWE (JJ) = XAVG_DSWE (JJ) + XPATCH(JJ,JPATCH) * XDSWE (JJ,JPATCH) 00253 XAVG_WATBUD(JJ) = XAVG_WATBUD(JJ) + XPATCH(JJ,JPATCH) * XWATBUD(JJ,JPATCH) 00254 ! 00255 ENDIF 00256 ENDDO 00257 ENDDO 00258 ! 00259 ENDIF 00260 ! 00261 END IF 00262 ! 00263 ! 00264 ! 2. Surface Cumulated Energy fluxes 00265 ! ------------------------------- 00266 ! 00267 IF (LSURF_BUDGETC) THEN 00268 XAVG_RNC (:) = 0. 00269 XAVG_HC (:) = 0. 00270 XAVG_LEC (:) = 0. 00271 XAVG_GFLUXC (:) = 0. 00272 XAVG_LEIC (:) = 0. 00273 XAVG_LEGC (:) = 0. 00274 XAVG_LEGIC (:) = 0. 00275 XAVG_LEVC (:) = 0. 00276 XAVG_LESC (:) = 0. 00277 XAVG_LESLC (:) = 0. 00278 XAVG_LERC (:) = 0. 00279 XAVG_LETRC (:) = 0. 00280 XAVG_EVAPC (:) = 0. 00281 XAVG_DRAINC (:) = 0. 00282 XAVG_RUNOFFC (:) = 0. 00283 XAVG_HORTC (:) = 0. 00284 XAVG_DRIPC (:) = 0. 00285 XAVG_RRVEGC (:) = 0. 00286 XAVG_MELTC (:) = 0. 00287 XAVG_IFLOODC (:) = 0. 00288 XAVG_PFLOODC (:) = 0. 00289 XAVG_LE_FLOODC (:) = 0. 00290 XAVG_LEI_FLOODC (:) = 0. 00291 XAVG_IRRIG_FLUXC(:) = 0. 00292 XAVG_GPPC (:) = 0. 00293 XAVG_RESPC_AUTO (:) = 0. 00294 XAVG_RESPC_ECO (:) = 0. 00295 ! 00296 DO JPATCH=1,SIZE(XPATCH,2) 00297 !cdir nodep 00298 DO JJ=1,SIZE(ZSUMPATCH) 00299 IF (ZSUMPATCH(JJ) > 0.) THEN 00300 ! 00301 ! Net radiation 00302 ! 00303 XAVG_RNC(JJ) = XAVG_RNC(JJ) + XPATCH(JJ,JPATCH) * XRNC(JJ,JPATCH) 00304 ! 00305 ! Sensible heat flux 00306 ! 00307 XAVG_HC(JJ) = XAVG_HC(JJ) + XPATCH(JJ,JPATCH) * XHC(JJ,JPATCH) 00308 ! 00309 ! Total latent heat flux 00310 ! 00311 XAVG_LEC(JJ) = XAVG_LEC(JJ) + XPATCH(JJ,JPATCH) * XLEC(JJ,JPATCH) 00312 ! 00313 ! Storage flux 00314 ! 00315 XAVG_GFLUXC(JJ) = XAVG_GFLUXC(JJ) + XPATCH(JJ,JPATCH) * XGFLUXC(JJ,JPATCH) 00316 ! 00317 ! Total surface sublimation 00318 ! 00319 XAVG_LEIC(JJ) = XAVG_LEIC(JJ) + XPATCH(JJ,JPATCH) * XLEIC(JJ,JPATCH) 00320 ! 00321 ! Latent heat of evaporation over the ground 00322 ! 00323 XAVG_LEGC(JJ) = XAVG_LEGC(JJ) + XPATCH(JJ,JPATCH) * XLEGC(JJ,JPATCH) 00324 ! 00325 ! Surface soil ice sublimation 00326 ! 00327 XAVG_LEGIC(JJ) = XAVG_LEGIC(JJ) + XPATCH(JJ,JPATCH) * XLEGIC(JJ,JPATCH) 00328 ! 00329 ! Latent heat of evaporation over vegetation 00330 ! 00331 XAVG_LEVC(JJ) = XAVG_LEVC(JJ) + XPATCH(JJ,JPATCH) * XLEVC(JJ,JPATCH) 00332 ! 00333 ! Latent heat of sublimation over snow 00334 ! 00335 XAVG_LESC(JJ) = XAVG_LESC(JJ) + XPATCH(JJ,JPATCH) * XLESC(JJ,JPATCH) 00336 ! 00337 ! Latent heat of evaporation of liquid water over snow 00338 ! 00339 XAVG_LESLC(JJ) = XAVG_LESLC(JJ) + XPATCH(JJ,JPATCH) * XLESLC(JJ,JPATCH) 00340 ! 00341 ! Evaporation from canopy water interception 00342 ! 00343 XAVG_LERC(JJ) = XAVG_LERC(JJ) + XPATCH(JJ,JPATCH) * XLERC(JJ,JPATCH) 00344 ! 00345 ! Evapotranspiration of the vegetation 00346 ! 00347 XAVG_LETRC(JJ) = XAVG_LETRC(JJ) + XPATCH(JJ,JPATCH) * XLETRC(JJ,JPATCH) 00348 ! 00349 ! Evapotranspiration 00350 ! 00351 XAVG_EVAPC(JJ) = XAVG_EVAPC(JJ) + XPATCH(JJ,JPATCH) * XEVAPC(JJ,JPATCH) 00352 ! 00353 ! Soil drainage flux 00354 ! 00355 XAVG_DRAINC(JJ) = XAVG_DRAINC(JJ) + XPATCH(JJ,JPATCH) * XDRAINC(JJ,JPATCH) 00356 ! 00357 ! Supersaturation runoff 00358 ! 00359 XAVG_RUNOFFC(JJ) = XAVG_RUNOFFC(JJ) + XPATCH(JJ,JPATCH) * XRUNOFFC(JJ,JPATCH) 00360 ! 00361 ! Horton runoff 00362 ! 00363 XAVG_HORTC(JJ) = XAVG_HORTC(JJ) + XPATCH(JJ,JPATCH) * XHORTC(JJ,JPATCH) 00364 ! 00365 ! Vegetation dripping 00366 ! 00367 XAVG_DRIPC(JJ) = XAVG_DRIPC(JJ) + XPATCH(JJ,JPATCH) * XDRIPC(JJ,JPATCH) 00368 ! 00369 ! precipitation intercepted by the vegetation 00370 ! 00371 XAVG_RRVEGC(JJ) = XAVG_RRVEGC(JJ) + XPATCH(JJ,JPATCH) * XRRVEGC(JJ,JPATCH) 00372 ! 00373 ! Snow melt 00374 ! 00375 XAVG_MELTC(JJ) = XAVG_MELTC(JJ) + XPATCH(JJ,JPATCH) * XMELTC(JJ,JPATCH) 00376 ! 00377 ! Flood infiltartion 00378 ! 00379 XAVG_IFLOODC(JJ) = XAVG_IFLOODC(JJ) + XPATCH(JJ,JPATCH) * XIFLOODC(JJ,JPATCH) 00380 ! 00381 ! Precipitation intercepted by the floodplains 00382 ! 00383 XAVG_PFLOODC(JJ) = XAVG_PFLOODC(JJ) + XPATCH(JJ,JPATCH) * XPFLOODC(JJ,JPATCH) 00384 ! 00385 ! Floodplains evaporation 00386 ! 00387 XAVG_LE_FLOODC (JJ) = XAVG_LE_FLOODC (JJ) + XPATCH(JJ,JPATCH) * XLE_FLOODC (JJ,JPATCH) 00388 XAVG_LEI_FLOODC(JJ) = XAVG_LEI_FLOODC(JJ) + XPATCH(JJ,JPATCH) * XLEI_FLOODC(JJ,JPATCH) 00389 ! 00390 ! irrigation rate (as soil input) 00391 ! 00392 XAVG_IRRIG_FLUXC(JJ) = XAVG_IRRIG_FLUXC(JJ) + XPATCH(JJ,JPATCH) * XIRRIG_FLUXC(JJ,JPATCH) 00393 ! 00394 ! Gross primary production 00395 ! 00396 XAVG_GPPC(JJ) = XAVG_GPPC(JJ) + XPATCH(JJ,JPATCH) * XGPPC(JJ,JPATCH) 00397 ! 00398 ! Autotrophic respiration 00399 ! 00400 XAVG_RESPC_AUTO(JJ) = XAVG_RESPC_AUTO(JJ) + XPATCH(JJ,JPATCH) * XRESPC_AUTO(JJ,JPATCH) 00401 ! 00402 ! Ecosystem respiration 00403 ! 00404 XAVG_RESPC_ECO(JJ) = XAVG_RESPC_ECO(JJ) + XPATCH(JJ,JPATCH) * XRESPC_ECO(JJ,JPATCH) 00405 ! 00406 ENDIF 00407 ENDDO 00408 END DO 00409 ! 00410 ! Isba water budget and reservoir time tendencies 00411 ! 00412 IF(LWATER_BUDGET)THEN 00413 ! 00414 XRAINFALLC (:) = XRAINFALLC (:) + PRAIN(:) 00415 XSNOWFALLC (:) = XSNOWFALLC (:) + PSNOW(:) 00416 XAVG_DWGC (:) = 0.0 00417 XAVG_DWGIC (:) = 0.0 00418 XAVG_DWRC (:) = 0.0 00419 XAVG_DSWEC (:) = 0.0 00420 XAVG_WATBUDC(:) = 0.0 00421 ! 00422 DO JPATCH=1,SIZE(XPATCH,2) 00423 ! cdir nodep 00424 DO JJ=1,SIZE(ZSUMPATCH) 00425 IF (ZSUMPATCH(JJ) > 0.) THEN 00426 ! 00427 XAVG_DWGC (JJ) = XAVG_DWGC (JJ) + XPATCH(JJ,JPATCH) * XDWGC (JJ,JPATCH) 00428 XAVG_DWGIC (JJ) = XAVG_DWGIC (JJ) + XPATCH(JJ,JPATCH) * XDWGIC (JJ,JPATCH) 00429 XAVG_DWRC (JJ) = XAVG_DWRC (JJ) + XPATCH(JJ,JPATCH) * XDWRC (JJ,JPATCH) 00430 XAVG_DSWEC (JJ) = XAVG_DSWEC (JJ) + XPATCH(JJ,JPATCH) * XDSWEC (JJ,JPATCH) 00431 XAVG_WATBUDC(JJ) = XAVG_WATBUDC(JJ) + XPATCH(JJ,JPATCH) * XWATBUDC(JJ,JPATCH) 00432 ! 00433 ENDIF 00434 ENDDO 00435 ENDDO 00436 ! 00437 ENDIF 00438 ! 00439 ! Ice calving flux 00440 ! 00441 IF(LGLACIER)THEN 00442 XAVG_ICEFLUXC(:)= 0. 00443 DO JPATCH=1,SIZE(XPATCH,2) 00444 ! cdir nodep 00445 DO JJ=1,SIZE(ZSUMPATCH) 00446 IF(ZSUMPATCH(JJ) > 0.)THEN 00447 XAVG_ICEFLUXC(JJ) = XAVG_ICEFLUXC(JJ) + XPATCH(JJ,JPATCH) * XICEFLUXC(JJ,JPATCH) 00448 ENDIF 00449 END DO 00450 END DO 00451 END IF 00452 ! 00453 END IF 00454 ! 00455 IF (LHOOK) CALL DR_HOOK('AVERAGE_DIAG_EVAP_ISBA_N',1,ZHOOK_HANDLE) 00456 ! 00457 !------------------------------------------------------------------------------- 00458 ! 00459 END SUBROUTINE AVERAGE_DIAG_EVAP_ISBA_n
1.8.0