7 PSFTH_ICE, PSFTQ_ICE, PDIR_SW, PSCA_SW )
49 TYPE(
diag_t),
INTENT(INOUT) :: D
52 LOGICAL,
INTENT(IN) :: OCPL_SEAICE
53 REAL,
INTENT(IN) :: PTSTEP
54 REAL,
DIMENSION(:),
INTENT(IN) :: PSFTQ
55 REAL,
DIMENSION(:),
INTENT(IN) :: PRAIN
56 REAL,
DIMENSION(:),
INTENT(IN) :: PSNOW
57 REAL,
DIMENSION(:),
INTENT(IN) :: PLW
58 REAL,
DIMENSION(:),
INTENT(IN) :: PSFTH_ICE
59 REAL,
DIMENSION(:),
INTENT(IN) :: PSFTQ_ICE
60 REAL,
DIMENSION(:,:),
INTENT(IN):: PDIR_SW
61 REAL,
DIMENSION(:,:),
INTENT(IN):: PSCA_SW
65 REAL,
DIMENSION(SIZE(W%XICE_ALB)) :: ZSWU, ZTICE4
72 REAL(KIND=JPRB) :: ZHOOK_HANDLE
74 IF (
lhook)
CALL dr_hook(
'DIAG_CPL_ESM_WATER',0,zhook_handle)
82 w%XCPL_WATER_WIND(:) = w%XCPL_WATER_WIND(:) + ptstep * sqrt(d%XZON10M(:)**2+d%XMER10M(:)**2)
86 w%XCPL_WATER_FWSU(:) = w%XCPL_WATER_FWSU(:) + ptstep * d%XFMU(:)
87 w%XCPL_WATER_FWSV(:) = w%XCPL_WATER_FWSV(:) + ptstep * d%XFMV(:)
88 w%XCPL_WATER_FWSM(:) = w%XCPL_WATER_FWSM(:) + ptstep * sqrt(d%XFMU(:)**2+d%XFMV(:)**2)
92 w%XCPL_WATER_SNET(:) = w%XCPL_WATER_SNET(:) + ptstep * (d%XSWD(:) - d%XSWU(:))
96 w%XCPL_WATER_HEAT(:) = w%XCPL_WATER_HEAT(:) + ptstep * (d%XGFLUX(:) + d%XSWU(:) - d%XSWD(:))
100 w%XCPL_WATER_EVAP(:) = w%XCPL_WATER_EVAP(:) + ptstep * psftq(:)
104 w%XCPL_WATER_RAIN(:) = w%XCPL_WATER_RAIN(:) + ptstep * prain(:)
105 w%XCPL_WATER_SNOW(:) = w%XCPL_WATER_SNOW(:) + ptstep * psnow(:)
111 IF (ocpl_seaice)
THEN 113 ini =
SIZE(pdir_sw,1)
114 iswb =
SIZE(pdir_sw,2)
121 zswu(ji) = zswu(ji) + (pdir_sw(ji,jswb)+psca_sw(ji,jswb)) * w%XICE_ALB(ji)
125 w%XCPL_WATERICE_SNET(:) = w%XCPL_WATERICE_SNET(:) + ptstep * (d%XSWD(:) - zswu(:))
129 ztice4(:)=w%XTICE(:)**4
131 w%XCPL_WATERICE_HEAT(:) = w%XCPL_WATERICE_HEAT(:) + ptstep * (
xemiswatice*(plw(:)-
xstefan*ztice4(:)) &
132 - psfth_ice(:) -
xlstt*psftq_ice(:) )
136 w%XCPL_WATERICE_EVAP(:) = w%XCPL_WATERICE_EVAP(:) + ptstep * psftq_ice(:)
140 IF (
lhook)
CALL dr_hook(
'DIAG_CPL_ESM_WATER',1,zhook_handle)
subroutine diag_cpl_esm_water(W, D, OCPL_SEAICE, PTSTEP, PSFTQ, PRAIN, PSNOW, PLW, PSFTH_ICE, PSFTQ_ICE, PDIR_SW, PSCA_SW)