56 USE yomhook
,ONLY : lhook, dr_hook
57 USE parkind1
,ONLY : jprb
72 INTEGER,
INTENT(IN) :: klu
73 INTEGER,
INTENT(IN) :: ksw
74 CHARACTER(LEN=6),
INTENT(IN):: hprogram
80 CHARACTER(LEN=12) :: yrec
81 REAL(KIND=JPRB) :: zhook_handle
85 IF (lhook) CALL dr_hook(
'DIAG_TEB_GARDEN_INIT_N',0,zhook_handle)
87 ALLOCATE(dggd%XRI (klu))
91 ALLOCATE(dggd%XCD (klu))
92 ALLOCATE(dggd%XCH (klu))
93 ALLOCATE(dggd%XRN (klu))
94 ALLOCATE(dggd%XH (klu))
95 ALLOCATE(dggd%XGFLUX (klu))
96 ALLOCATE(dggd%XQS (klu))
105 ALLOCATE(dggd%XLEI (klu))
106 ALLOCATE(dggd%XLEG (klu))
107 ALLOCATE(dggd%XLEGI (klu))
108 ALLOCATE(dggd%XLEV (klu))
109 ALLOCATE(dggd%XLES (klu))
110 ALLOCATE(dggd%XLER (klu))
111 ALLOCATE(dggd%XLETR (klu))
112 ALLOCATE(dggd%XEVAP (klu))
113 ALLOCATE(dggd%XDRAIN (klu))
114 ALLOCATE(dggd%XRUNOFF (klu))
115 ALLOCATE(dggd%XHORT (klu))
116 ALLOCATE(dggd%XDRIP (klu))
117 ALLOCATE(dggd%XRRVEG (klu))
118 ALLOCATE(dggd%XMELT (klu))
119 ALLOCATE(dggd%XIRRIG_FLUX(klu))
130 dggd%XRUNOFF = xundef
135 dggd%XIRRIG_FLUX = xundef
137 ALLOCATE(dggd%XCG (klu))
138 ALLOCATE(dggd%XC1 (klu))
139 ALLOCATE(dggd%XC2 (klu))
140 ALLOCATE(dggd%XWGEQ (klu))
141 ALLOCATE(dggd%XCT (klu))
142 ALLOCATE(dggd%XRS (klu))
143 ALLOCATE(dggd%XCDN (klu))
144 ALLOCATE(dggd%XHU (klu))
145 ALLOCATE(dggd%XHUG (klu))
146 ALLOCATE(dggd%XRESTORE(klu))
147 ALLOCATE(dggd%XUSTAR (klu))
148 IF (tvg%CPHOTO/=
'NON')
THEN
149 ALLOCATE(dggd%XIACAN (klu,
SIZE(tgdp%XABC) ))
151 ALLOCATE(dggd%XIACAN (0,0))
163 dggd%XRESTORE = xundef
165 IF (tvg%CPHOTO/=
'NON')
THEN
169 ALLOCATE(dggd%XSNOWTEMP(klu,tgd%CUR%TSNOW%NLAYER ))
170 ALLOCATE(dggd%XSNOWLIQ (klu,tgd%CUR%TSNOW%NLAYER ))
171 ALLOCATE(dggd%XSNOWDZ (klu,tgd%CUR%TSNOW%NLAYER ))
172 ALLOCATE(dggd%XSNOWHMASS(klu))
173 ALLOCATE(dggd%XMELTADV (klu))
175 dggd%XSNOWTEMP = xundef
176 dggd%XSNOWLIQ = xundef
177 dggd%XSNOWDZ = xundef
178 dggd%XSNOWHMASS = xundef
179 dggd%XMELTADV = xundef
181 ALLOCATE(dggd%XHV (klu))
182 ALLOCATE(dggd%XALBT (klu))
183 ALLOCATE(dggd%XEMIST (klu))
189 ALLOCATE(dggd%XFAPAR (klu))
190 ALLOCATE(dggd%XFAPIR (klu))
191 ALLOCATE(dggd%XFAPAR_BS (klu))
192 ALLOCATE(dggd%XFAPIR_BS (klu))
193 ALLOCATE(dggd%XDFAPARC (klu))
194 ALLOCATE(dggd%XDFAPIRC (klu))
195 ALLOCATE(dggd%XDLAI_EFFC(klu))
199 dggd%XFAPAR_BS = xundef
200 dggd%XFAPIR_BS = xundef
201 dggd%XDFAPARC = xundef
202 dggd%XDFAPIRC = xundef
203 dggd%XDLAI_EFFC = xundef
209 ALLOCATE(dggd%XSWD (klu))
210 ALLOCATE(dggd%XSWU (klu))
211 ALLOCATE(dggd%XSWBD (klu,ksw))
212 ALLOCATE(dggd%XSWBU (klu,ksw))
213 ALLOCATE(dggd%XLWD (klu))
214 ALLOCATE(dggd%XLWU (klu))
215 ALLOCATE(dggd%XFMU (klu))
216 ALLOCATE(dggd%XFMV (klu))
231 ALLOCATE(dggd%XTS (klu))
233 ALLOCATE(dggd%XTSRAD (klu))
238 IF (dgmto%LSURF_MISC_BUDGET)
THEN
239 ALLOCATE(dggd%XSWI (klu,tgdo%NGROUND_LAYER))
240 ALLOCATE(dggd%XTSWI (klu,tgdo%NGROUND_LAYER))
241 ALLOCATE(dggd%XTWSNOW (klu))
242 ALLOCATE(dggd%XTDSNOW (klu))
245 dggd%XTWSNOW = xundef
246 dggd%XTDSNOW = xundef
248 ALLOCATE(dggd%XSWI (0,0))
249 ALLOCATE(dggd%XTSWI (0,0))
250 ALLOCATE(dggd%XTWSNOW (0))
251 ALLOCATE(dggd%XTDSNOW (0))
254 ALLOCATE(dggd%XALBT (klu))
255 ALLOCATE(dggd%XGPP (klu))
256 ALLOCATE(dggd%XRESP_AUTO (klu))
257 ALLOCATE(dggd%XRESP_ECO (klu))
261 dggd%XRESP_AUTO = xundef
262 dggd%XRESP_ECO = xundef
270 ALLOCATE(dggd%XCE (klu))
271 ALLOCATE(dggd%XZ0_WITH_SNOW (klu))
272 ALLOCATE(dggd%XZ0H_WITH_SNOW (klu))
273 ALLOCATE(dggd%XZ0EFF (klu))
276 dggd%XZ0_WITH_SNOW = xundef
277 dggd%XZ0H_WITH_SNOW = xundef
285 ALLOCATE(dggd%XQS (klu))
293 ALLOCATE(dggd%XSEUIL(klu))
298 IF (lhook) CALL dr_hook(
'DIAG_TEB_GARDEN_INIT_N',1,zhook_handle)
subroutine diag_teb_garden_init_n(DGMTO, DGGD, TGD, TGDO, TGDP, TVG, HPROGRAM, KLU, KSW)