8 prn, ph, ple, plei, pgflux, pri, pcd, pch, pce, pqs, &
9 pz0, pz0h, pt2m, pts, pq2m, phu2m, pzon10m, pmer10m, &
10 pswd, pswu, plwd, plwu, pswbd, pswbu, pfmu, pfmv, &
11 prnc, phc, plec, pgfluxc, pswdc, pswuc, plwdc, &
12 plwuc, pfmuc, pfmvc, pt2m_min, pt2m_max, pleic, &
13 phu2m_min, phu2m_max, pwind10m, pwind10m_max, &
14 pevap, pevapc, psubl, psublc )
50 USE yomhook
,ONLY : lhook, dr_hook
51 USE parkind1
,ONLY : jprb
61 CHARACTER(LEN=6),
INTENT(IN) :: hprogram
63 REAL,
DIMENSION(:),
INTENT(OUT) :: prn
64 REAL,
DIMENSION(:),
INTENT(OUT) :: ph
65 REAL,
DIMENSION(:),
INTENT(OUT) :: ple
66 REAL,
DIMENSION(:),
INTENT(OUT) :: plei
67 REAL,
DIMENSION(:),
INTENT(OUT) :: pgflux
68 REAL,
DIMENSION(:),
INTENT(OUT) :: pevap
69 REAL,
DIMENSION(:),
INTENT(OUT) :: psubl
70 REAL,
DIMENSION(:),
INTENT(OUT) :: pri
71 REAL,
DIMENSION(:),
INTENT(OUT) :: pcd
72 REAL,
DIMENSION(:),
INTENT(OUT) :: pch
73 REAL,
DIMENSION(:),
INTENT(OUT) :: pce
74 REAL,
DIMENSION(:),
INTENT(OUT) :: pqs
75 REAL,
DIMENSION(:),
INTENT(OUT) :: pz0
76 REAL,
DIMENSION(:),
INTENT(OUT) :: pz0h
77 REAL,
DIMENSION(:),
INTENT(OUT) :: pts
78 REAL,
DIMENSION(:),
INTENT(OUT) :: pt2m
79 REAL,
DIMENSION(:),
INTENT(OUT) :: pq2m
80 REAL,
DIMENSION(:),
INTENT(OUT) :: phu2m
81 REAL,
DIMENSION(:),
INTENT(OUT) :: pzon10m
82 REAL,
DIMENSION(:),
INTENT(OUT) :: pmer10m
83 REAL,
DIMENSION(:),
INTENT(OUT) :: pswd
84 REAL,
DIMENSION(:),
INTENT(OUT) :: pswu
85 REAL,
DIMENSION(:),
INTENT(OUT) :: plwd
86 REAL,
DIMENSION(:),
INTENT(OUT) :: plwu
87 REAL,
DIMENSION(:,:),
INTENT(OUT) :: pswbd
88 REAL,
DIMENSION(:,:),
INTENT(OUT) :: pswbu
89 REAL,
DIMENSION(:),
INTENT(OUT) :: pfmu
90 REAL,
DIMENSION(:),
INTENT(OUT) :: pfmv
91 REAL,
DIMENSION(:),
INTENT(OUT) :: prnc
92 REAL,
DIMENSION(:),
INTENT(OUT) :: phc
93 REAL,
DIMENSION(:),
INTENT(OUT) :: plec
94 REAL,
DIMENSION(:),
INTENT(OUT) :: pleic
95 REAL,
DIMENSION(:),
INTENT(OUT) :: pgfluxc
96 REAL,
DIMENSION(:),
INTENT(OUT) :: pevapc
97 REAL,
DIMENSION(:),
INTENT(OUT) :: psublc
98 REAL,
DIMENSION(:),
INTENT(OUT) :: pswdc
99 REAL,
DIMENSION(:),
INTENT(OUT) :: pswuc
100 REAL,
DIMENSION(:),
INTENT(OUT) :: plwdc
101 REAL,
DIMENSION(:),
INTENT(OUT) :: plwuc
102 REAL,
DIMENSION(:),
INTENT(OUT) :: pfmuc
103 REAL,
DIMENSION(:),
INTENT(OUT) :: pfmvc
104 REAL,
DIMENSION(:),
INTENT(OUT) :: pt2m_min
105 REAL,
DIMENSION(:),
INTENT(OUT) :: pt2m_max
106 REAL,
DIMENSION(:),
INTENT(OUT) :: phu2m_min
107 REAL,
DIMENSION(:),
INTENT(OUT) :: phu2m_max
108 REAL,
DIMENSION(:),
INTENT(OUT) :: pwind10m
109 REAL,
DIMENSION(:),
INTENT(OUT) :: pwind10m_max
110 REAL(KIND=JPRB) :: zhook_handle
117 IF (lhook) CALL dr_hook(
'DIAG_ISBA_N',0,zhook_handle)
118 IF (dgi%LSURF_BUDGET)
THEN
123 pgflux = dgi%XAVG_GFLUX
128 pswbd = dgi%XAVG_SWBD
129 pswbu = dgi%XAVG_SWBU
134 IF (dgei%LSURF_EVAP_BUDGET)
THEN
135 pevap = dgei%XAVG_EVAP
136 psubl = dgei%XAVG_SUBL
139 IF (dgei%LSURF_BUDGETC)
THEN
143 pleic = dgei%XAVG_LEIC
144 pgfluxc = dgei%XAVG_GFLUXC
145 pevapc = dgei%XAVG_EVAPC
146 psublc = dgei%XAVG_SUBLC
147 pswdc = dgi%XAVG_SWDC
148 pswuc = dgi%XAVG_SWUC
149 plwdc = dgi%XAVG_LWDC
150 plwuc = dgi%XAVG_LWUC
151 pfmuc = dgi%XAVG_FMUC
152 pfmvc = dgi%XAVG_FMVC
155 IF (dgi%N2M>=1 .OR. dgi%LSURF_BUDGET .OR. dgei%LSURF_BUDGETC) pts = dgi%XAVG_TS
160 pt2m_min = dgi%XAVG_T2M_MIN
161 pt2m_max = dgi%XAVG_T2M_MAX
163 phu2m = dgi%XAVG_HU2M
164 phu2m_min= dgi%XAVG_HU2M_MIN
165 phu2m_max= dgi%XAVG_HU2M_MAX
166 pzon10m = dgi%XAVG_ZON10M
167 pmer10m = dgi%XAVG_MER10M
168 pwind10m = dgi%XAVG_WIND10M
169 pwind10m_max = dgi%XAVG_WIND10M_MAX
180 IF (dgi%LSURF_VARS)
THEN
184 IF (lhook) CALL dr_hook(
'DIAG_ISBA_N',1,zhook_handle)
subroutine diag_isba_n(DGEI, DGI, HPROGRAM, PRN, PH, PLE, PLEI, PGFLUX, PRI, PCD, PCH, PCE, PQS, PZ0, PZ0H, PT2M, PTS, PQ2M, PHU2M, PZON10M, PMER10M, PSWD, PSWU, PLWD, PLWU, PSWBD, PSWBU, PFMU, PFMV, PRNC, PHC, PLEC, PGFLUXC, PSWDC, PSWUC, PLWDC, PLWUC, PFMUC, PFMVC, PT2M_MIN, PT2M_MAX, PLEIC, PHU2M_MIN, PHU2M_MAX, PWIND10M, PWIND10M_MAX, PEVAP, PEVAPC, PSUBL, PSUBLC)