7 ptstep, pta, pqa, ppa, pps, prhoa, pzona, &
8 pmera, pht, phw, pcd, pcdn, pch, pri, phu, &
9 pz0h, pqsat, psfth, psftq, psfzon, psfmer, &
10 pdir_sw, psca_sw, plw, pdir_alb, psca_alb, &
11 pemis, ptrad, prain, psnow, psfth_ice, &
54 USE modi_diag_surf_budget_water
55 USE modi_diag_surf_budgetc_water
56 USE modi_diag_cpl_esm_water
59 USE yomhook
,ONLY : lhook, dr_hook
60 USE parkind1
,ONLY : jprb
70 REAL,
INTENT(IN) :: ptstep
71 REAL,
DIMENSION(:),
INTENT(IN) :: pta
72 REAL,
DIMENSION(:),
INTENT(IN) :: pqa
73 REAL,
DIMENSION(:),
INTENT(IN) :: ppa
74 REAL,
DIMENSION(:),
INTENT(IN) :: pps
75 REAL,
DIMENSION(:),
INTENT(IN) :: prhoa
76 REAL,
DIMENSION(:),
INTENT(IN) :: pzona
77 REAL,
DIMENSION(:),
INTENT(IN) :: pmera
78 REAL,
DIMENSION(:),
INTENT(IN) :: pht
79 REAL,
DIMENSION(:),
INTENT(IN) :: phw
80 REAL,
DIMENSION(:),
INTENT(IN) :: pcd
81 REAL,
DIMENSION(:),
INTENT(IN) :: pcdn
82 REAL,
DIMENSION(:),
INTENT(IN) :: pch
83 REAL,
DIMENSION(:),
INTENT(IN) :: pri
84 REAL,
DIMENSION(:),
INTENT(IN) :: phu
85 REAL,
DIMENSION(:),
INTENT(IN) :: pz0h
86 REAL,
DIMENSION(:),
INTENT(IN) :: pqsat
87 REAL,
DIMENSION(:),
INTENT(IN) :: psfzon
88 REAL,
DIMENSION(:),
INTENT(IN) :: psfmer
89 REAL,
DIMENSION(:),
INTENT(IN) :: psfth
90 REAL,
DIMENSION(:),
INTENT(IN) :: psftq
91 REAL,
DIMENSION(:,:),
INTENT(IN):: pdir_sw
93 REAL,
DIMENSION(:,:),
INTENT(IN):: psca_sw
95 REAL,
DIMENSION(:),
INTENT(IN) :: plw
96 REAL,
DIMENSION(:),
INTENT(IN) :: ptrad
97 REAL,
DIMENSION(:,:),
INTENT(IN):: pdir_alb
98 REAL,
DIMENSION(:,:),
INTENT(IN):: psca_alb
99 REAL,
DIMENSION(:),
INTENT(IN) :: pemis
101 REAL,
DIMENSION(:),
INTENT(IN) :: prain
102 REAL,
DIMENSION(:),
INTENT(IN) :: psnow
103 REAL,
DIMENSION(:),
INTENT(IN) :: psfth_ice
104 REAL,
DIMENSION(:),
INTENT(IN) :: psftq_ice
108 REAL,
DIMENSION(SIZE(PTA)) :: zh
109 REAL(KIND=JPRB) :: zhook_handle
112 IF (lhook) CALL dr_hook(
'DIAG_INLINE_WATFLUX_N',0,zhook_handle)
116 dgw%XDIAG_TS(:) = w%XTS(:)
118 IF (.NOT. w%LSBL)
THEN
121 CALL
param_cls(pta, w%XTS, pqa, ppa, prhoa, pzona, pmera, pht, phw, &
122 psfth, psftq, psfzon, psfmer, &
123 dgw%XT2M, dgw%XQ2M, dgw%XHU2M, dgw%XZON10M, dgw%XMER10M )
124 ELSE IF (dgw%N2M==2)
THEN
126 CALL
cls_tq(pta, pqa, ppa, pps, pht, &
128 w%XTS, phu, pz0h, zh, &
129 dgw%XT2M, dgw%XQ2M, dgw%XHU2M )
132 pcd, pcdn, pri, zh, &
133 dgw%XZON10M, dgw%XMER10M )
138 dgw%XT2M_MIN(:) = min(dgw%XT2M_MIN(:),dgw%XT2M(:))
139 dgw%XT2M_MAX(:) = max(dgw%XT2M_MAX(:),dgw%XT2M(:))
141 dgw%XHU2M_MIN(:) = min(dgw%XHU2M_MIN(:),dgw%XHU2M(:))
142 dgw%XHU2M_MAX(:) = max(dgw%XHU2M_MAX(:),dgw%XHU2M(:))
144 dgw%XWIND10M (:) = sqrt(dgw%XZON10M(:)**2+dgw%XMER10M(:)**2)
145 dgw%XWIND10M_MAX(:) = max(dgw%XWIND10M_MAX(:),dgw%XWIND10M(:))
163 IF (dgw%LSURF_BUDGET.OR.dgw%LSURF_BUDGETC)
THEN
166 pdir_sw, psca_sw, plw, &
167 pdir_alb, psca_alb, pemis, ptrad, &
169 dgw%XRN, dgw%XH, dgw%XLE, dgw%XLEI, dgw%XGFLUX, &
170 dgw%XSWD, dgw%XSWU, dgw%XSWBD, dgw%XSWBU, dgw%XLWD, dgw%XLWU, &
171 dgw%XFMU, dgw%XFMV, dgw%XEVAP, dgw%XSUBL )
175 IF(dgw%LSURF_BUDGETC)
THEN
177 ptstep, dgw%XRN, dgw%XH, dgw%XLE, dgw%XLEI, dgw%XGFLUX, &
178 dgw%XSWD, dgw%XSWU, dgw%XLWD, dgw%XLWU, dgw%XFMU, dgw%XFMV,&
179 dgw%XEVAP, dgw%XSUBL )
197 IF (dgw%LSURF_VARS)
THEN
210 lcpl_seaice,ptstep,dgw%XZON10M,dgw%XMER10M,dgw%XFMU,dgw%XFMV, &
211 dgw%XSWD,dgw%XSWU,dgw%XGFLUX,psftq,prain,psnow,plw,w%XTICE, &
212 psfth_ice,psftq_ice,pdir_sw,psca_sw )
215 IF (lhook) CALL dr_hook(
'DIAG_INLINE_WATFLUX_N',1,zhook_handle)
subroutine cls_wind(PZONA, PMERA, PHW, PCD, PCDN, PRI, PHV, PZON10M, PMER10M)
subroutine diag_surf_budgetc_water(DGW, PTSTEP, PRN, PH, PLE, PLEI, PGFLUX, PSWD, PSWU, PLWD, PLWU, PFMU, PFMV, PEVAP, PSUBL)
subroutine param_cls(PTA, PTS, PQA, PPA, PRHOA, PZONA, PMERA, PH, PHW, PSFTH, PSFTQ, PSFZON, PSFMER, PT2M, PQ2M, PHU2M, PZON10M, PMER10M)
subroutine diag_surf_budget_water(PTT, PTS, PRHOA, PSFTH, PSFTQ, PDIR_SW, PSCA_SW, PLW, PDIR_ALB, PSCA_ALB, PEMIS, PTRAD, PSFZON, PSFMER, PRN, PH, PLE, PLEI, PGFLUX, PSWD, PSWU, PSWBD, PSWBU, PLWD, PLWU, PFMU, PFMV, PEVAP, PSUBL)
subroutine diag_inline_watflux_n(DGW, W, PTSTEP, PTA, PQA, PPA, PPS, PRHOA, PZONA, PMERA, PHT, PHW, PCD, PCDN, PCH, PRI, PHU, PZ0H, PQSAT, PSFTH, PSFTQ, PSFZON, PSFMER, PDIR_SW, PSCA_SW, PLW, PDIR_ALB, PSCA_ALB, PEMIS, PTRAD, PRAIN, PSNOW, PSFTH_ICE, PSFTQ_ICE)
subroutine diag_cpl_esm_water(W, OCPL_SEAICE, PTSTEP, PZON10M, PMER10M, PSFU, PSFV, PSWD, PSWU, PGFLUX, PSFTQ, PRAIN, PSNOW, PLW, PTICE, PSFTH_ICE, PSFTQ_ICE, PDIR_SW, PSCA_SW)
subroutine cls_tq(PTA, PQA, PPA, PPS, PHT, PCD, PCH, PRI, PTS, PHU, PZ0H, PH, PTNM, PQNM, PHUNM)