7 pta, pts, pqa, ppa, pps, prhoa, pzona, pmera, &
8 pht, phw, pcd, pcdn, pch, pri, phu, pz0, pz0h, &
9 pz0eff, psfth, psftq, psfzon, psfmer, pqs, &
10 pdir_alb, psca_alb, pdir_sw, psca_sw, plw, prn )
51 USE modi_diag_surf_budget_isba
54 USE yomhook
,ONLY : lhook, dr_hook
55 USE parkind1
,ONLY : jprb
64 TYPE(isba_t
),
INTENT(INOUT) :: i
67 REAL,
DIMENSION(:),
INTENT(IN) :: pta
68 REAL,
DIMENSION(:),
INTENT(IN) :: pts
69 REAL,
DIMENSION(:),
INTENT(IN) :: pqa
70 REAL,
DIMENSION(:),
INTENT(IN) :: ppa
71 REAL,
DIMENSION(:),
INTENT(IN) :: pps
72 REAL,
DIMENSION(:),
INTENT(IN) :: prhoa
73 REAL,
DIMENSION(:),
INTENT(IN) :: pzona
74 REAL,
DIMENSION(:),
INTENT(IN) :: pmera
75 REAL,
DIMENSION(:),
INTENT(IN) :: pht
76 REAL,
DIMENSION(:),
INTENT(IN) :: phw
77 REAL,
DIMENSION(:),
INTENT(IN) :: pcd
78 REAL,
DIMENSION(:),
INTENT(IN) :: pcdn
79 REAL,
DIMENSION(:),
INTENT(IN) :: pch
80 REAL,
DIMENSION(:),
INTENT(IN) :: pri
81 REAL,
DIMENSION(:),
INTENT(IN) :: phu
82 REAL,
DIMENSION(:),
INTENT(IN) :: pz0
83 REAL,
DIMENSION(:),
INTENT(IN) :: pz0h
84 REAL,
DIMENSION(:),
INTENT(IN) :: pz0eff
85 REAL,
DIMENSION(:),
INTENT(IN) :: pqs
86 REAL,
DIMENSION(:,:),
INTENT(IN) :: pdir_alb
87 REAL,
DIMENSION(:,:),
INTENT(IN) :: psca_alb
88 REAL,
DIMENSION(:,:),
INTENT(IN) :: pdir_sw
89 REAL,
DIMENSION(:,:),
INTENT(IN) :: psca_sw
90 REAL,
DIMENSION(:),
INTENT(IN) :: plw
91 REAL,
DIMENSION(:),
INTENT(IN) :: prn
93 REAL,
DIMENSION(:),
INTENT(IN) :: psfzon
94 REAL,
DIMENSION(:),
INTENT(IN) :: psfmer
95 REAL,
DIMENSION(:),
INTENT(IN) :: psfth
96 REAL,
DIMENSION(:),
INTENT(IN) :: psftq
100 REAL,
DIMENSION(SIZE(PTA)) :: zh
101 REAL(KIND=JPRB) :: zhook_handle
104 IF (lhook) CALL dr_hook(
'DIAG_INLINE_ISBA_N',0,zhook_handle)
114 IF (.NOT. i%LCANOPY)
THEN
117 CALL
param_cls(pta, pts, pqa, ppa, prhoa, pzona, pmera, pht, phw, &
118 psfth, psftq, psfzon, psfmer, &
119 pkdi%XP_T2M, pkdi%XP_Q2M, pkdi%XP_HU2M, pkdi%XP_ZON10M, pkdi%XP_MER10M )
120 ELSE IF (dgi%N2M==2)
THEN
122 CALL
cls_tq(pta, pqa, ppa, pps, pht, &
124 pts, phu, pz0h, zh, &
125 pkdi%XP_T2M, pkdi%XP_Q2M, pkdi%XP_HU2M )
128 pcd, pcdn, pri, zh, &
129 pkdi%XP_ZON10M, pkdi%XP_MER10M )
137 pkdi%XP_HU2M = xundef
138 pkdi%XP_ZON10M = xundef
139 pkdi%XP_MER10M = xundef
146 IF (dgi%LSURF_BUDGET.OR.dgei%LSURF_BUDGETC)
THEN
150 pkdi%XP_SWD, pkdi%XP_SWU, pkdi%XP_SWBD, pkdi%XP_SWBU, &
151 pkdi%XP_LWD, pkdi%XP_LWU )
168 pkdi%XP_Z0_WITH_SNOW = pz0
169 pkdi%XP_Z0H_WITH_SNOW = pz0h
170 pkdi%XP_Z0EFF = pz0eff
174 IF (dgi%LSURF_VARS)
THEN
181 IF (lhook) CALL dr_hook(
'DIAG_INLINE_ISBA_N',1,zhook_handle)
subroutine cls_wind(PZONA, PMERA, PHW, PCD, PCDN, PRI, PHV, PZON10M, PMER10M)
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_isba(PDIR_SW, PSCA_SW, PDIR_ALB, PSCA_ALB, PLW, PRN, PSWD, PSWU, PSWBD, PSWBU, PLWD, PLWU)
subroutine diag_inline_isba_n(DGEI, DGI, I, PKDI, PTA, PTS, PQA, PPA, PPS, PRHOA, PZONA, PMERA, PHT, PHW, PCD, PCDN, PCH, PRI, PHU, PZ0, PZ0H, PZ0EFF, PSFTH, PSFTQ, PSFZON, PSFMER, PQS, PDIR_ALB, PSCA_ALB, PDIR_SW, PSCA_SW, PLW, PRN)
subroutine cls_tq(PTA, PQA, PPA, PPS, PHT, PCD, PCH, PRI, PTS, PHU, PZ0H, PH, PTNM, PQNM, PHUNM)