SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
init_veg_pgd_gardenn.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 !#############################################################
6 SUBROUTINE init_veg_pgd_garden_n (CHI, DTCO, DST, I, SLT, U, &
7  hprogram, kluout, ki, kground_layer, kmonth, &
8  pvegtype, ptdeep, pgammat, hphoto, hinit, otr_ml, hrunoff, &
9  knbiomass, pco2, prhoa, pabc, ppoi, &
10  pgmes, pgc, pdmax, panmax, pfzero, pepso, pgamm, pqdgamm, &
11  pqdgmes, pt1gmes, pt2gmes, pamax, pqdamax, pt1amax, pt2amax,&
12  pah, pbh, &
13  ksv, hsv, ysv, hch_names, haer_names, hdstnames, hsltnames, &
14  hchem_surf_file, &
15  pclay, psand, hpedotf, &
16  pcondsat, pmpotsat, pbcoef, pwwilt, pwfc, pwsat, &
17  ptauice, pcgsat, pc1sat, pc2ref, pc3, pc4b, pacoef, ppcoef, &
18  pc4ref, ppcps, pplvtt, pplstt, &
19  hscond, hisba, phcapsoil, pconddry, pcondsld, hcpsurf, &
20  pdg, pdroot, pdg2, prootfrac, prunoffd, pdzg, pdzdif, &
21  psoilwght, kwg_layer, klayer_hort, klayer_dun, pd_ice, &
22  pksat_ice, palbnir_dry, palbvis_dry, palbuv_dry, &
23  palbnir_wet, palbvis_wet, palbuv_wet, pbslai_nitro, &
24  pce_nitro, pcna_nitro, pcf_nitro )
25 !#############################################################
26 !
27 !!**** *INIT_VEG_PGD_GARDEN_n* - routine to initialize ISBA
28 !!
29 !! PURPOSE
30 !! -------
31 !!
32 !!** METHOD
33 !! ------
34 !!
35 !! EXTERNAL
36 !! --------
37 !!
38 !!
39 !! IMPLICIT ARGUMENTS
40 !! ------------------
41 !!
42 !! REFERENCE
43 !! ---------
44 !!
45 !!
46 !! AUTHOR
47 !! ------
48 !! V. Masson *Meteo France*
49 !!
50 !! MODIFICATIONS
51 !! -------------
52 ! B. decharme 04/2013 : dummy for water table / surface coupling
53 !!
54 !-------------------------------------------------------------------------------
55 !
56 !* 0. DECLARATIONS
57 ! ------------
58 !
59 !
60 USE modd_sv_n, ONLY : sv_t
61 !
62 USE modd_ch_isba_n, ONLY : ch_isba_t
64 USE modd_dst_n, ONLY : dst_t
65 USE modd_isba_n, ONLY : isba_t
66 USE modd_slt_n, ONLY : slt_t
67 USE modd_surf_atm_n, ONLY : surf_atm_t
68 !
69 USE modi_init_veg_pgd_n
70 !
71 USE yomhook ,ONLY : lhook, dr_hook
72 USE parkind1 ,ONLY : jprb
73 !
74 IMPLICIT NONE
75 !
76 !* 0.1 Declarations of arguments
77 ! -------------------------
78 !
79 !
80 TYPE(ch_isba_t), INTENT(INOUT) :: chi
81 TYPE(data_cover_t), INTENT(INOUT) :: dtco
82 TYPE(dst_t), INTENT(INOUT) :: dst
83 TYPE(isba_t), INTENT(INOUT) :: i
84 TYPE(slt_t), INTENT(INOUT) :: slt
85 TYPE(surf_atm_t), INTENT(INOUT) :: u
86 !
87  CHARACTER(LEN=6), INTENT(IN) :: hprogram ! program calling surf. schemes
88 INTEGER, INTENT(IN) :: kluout
89 !
90 INTEGER, INTENT(IN) :: ki
91 INTEGER, INTENT(IN) :: kground_layer
92 INTEGER, INTENT(IN) :: kmonth
93 !
94 REAL, DIMENSION(:,:), POINTER :: pvegtype
95 !
96 REAL, DIMENSION(:), POINTER :: ptdeep
97 REAL, DIMENSION(:), POINTER :: pgammat
98 !
99 !
100  CHARACTER(LEN=3), INTENT(IN) :: hphoto
101  CHARACTER(LEN=3), INTENT(IN) :: hinit
102 LOGICAL, INTENT(IN) :: otr_ml
103  CHARACTER(LEN=4), INTENT(IN) :: hrunoff
104 INTEGER, INTENT(IN) :: knbiomass
105 REAL, DIMENSION(:), INTENT(IN) :: pco2
106 REAL, DIMENSION(:), INTENT(IN) :: prhoa
107 REAL, DIMENSION(:), POINTER :: pabc
108 REAL, DIMENSION(:), POINTER :: ppoi
109 REAL, DIMENSION(:), POINTER :: pgmes
110 REAL, DIMENSION(:), POINTER :: pgc
111 REAL, DIMENSION(:), POINTER :: pdmax
112 REAL, DIMENSION(:), POINTER :: panmax
113 REAL, DIMENSION(:), POINTER :: pfzero
114 REAL, DIMENSION(:), POINTER :: pepso
115 REAL, DIMENSION(:), POINTER :: pgamm
116 REAL, DIMENSION(:), POINTER :: pqdgamm
117 REAL, DIMENSION(:), POINTER :: pqdgmes
118 REAL, DIMENSION(:), POINTER :: pt1gmes
119 REAL, DIMENSION(:), POINTER :: pt2gmes
120 REAL, DIMENSION(:), POINTER :: pamax
121 REAL, DIMENSION(:), POINTER :: pqdamax
122 REAL, DIMENSION(:), POINTER :: pt1amax
123 REAL, DIMENSION(:), POINTER :: pt2amax
124 REAL, DIMENSION(:), POINTER :: pah
125 REAL, DIMENSION(:), POINTER :: pbh
126 !
127 INTEGER, INTENT(IN) :: ksv ! number of scalars
128  CHARACTER(LEN=6), DIMENSION(KSV), INTENT(IN) :: hsv ! name of all scalar variables
129 TYPE(sv_t), INTENT(INOUT) :: ysv
130  CHARACTER(LEN=6), DIMENSION(:), POINTER :: hch_names
131  CHARACTER(LEN=6), DIMENSION(:), POINTER :: haer_names
132  CHARACTER(LEN=6), DIMENSION(:), POINTER, OPTIONAL :: hdstnames
133  CHARACTER(LEN=6), DIMENSION(:), POINTER, OPTIONAL :: hsltnames
134 !
135  CHARACTER(LEN=28), INTENT(OUT) :: hchem_surf_file
136 !
137 REAL, DIMENSION(:,:), INTENT(IN) :: pclay
138 REAL, DIMENSION(:,:), INTENT(IN) :: psand
139  CHARACTER(LEN=4), INTENT(IN) :: hpedotf
140 REAL, DIMENSION(:,:), POINTER :: pcondsat
141 REAL, DIMENSION(:,:), POINTER :: pmpotsat
142 REAL, DIMENSION(:,:), POINTER :: pbcoef
143 REAL, DIMENSION(:,:), POINTER :: pwwilt
144 REAL, DIMENSION(:,:), POINTER :: pwfc
145 REAL, DIMENSION(:,:), POINTER :: pwsat
146 REAL, DIMENSION(:), POINTER :: ptauice
147 REAL, DIMENSION(:), POINTER :: pcgsat
148 REAL, DIMENSION(:), POINTER :: pc1sat
149 REAL, DIMENSION(:), POINTER :: pc2ref
150 REAL, DIMENSION(:,:), POINTER :: pc3
151 REAL, DIMENSION(:), POINTER :: pc4b
152 REAL, DIMENSION(:), POINTER :: pacoef
153 REAL, DIMENSION(:), POINTER :: ppcoef
154 REAL, DIMENSION(:), POINTER :: pc4ref
155 !
156 REAL, DIMENSION(:), POINTER :: ppcps
157 REAL, DIMENSION(:), POINTER :: pplvtt
158 REAL, DIMENSION(:), POINTER :: pplstt
159 !
160  CHARACTER(LEN=4), INTENT(IN) :: hscond
161  CHARACTER(LEN=3), INTENT(IN) :: hisba
162 REAL, DIMENSION(:,:), POINTER :: phcapsoil
163 REAL, DIMENSION(:,:), POINTER :: pconddry
164 REAL, DIMENSION(:,:), POINTER :: pcondsld
165  CHARACTER(LEN=3), INTENT(IN) :: hcpsurf
166 !
167 REAL, DIMENSION(:,:), INTENT(IN) :: pdg
168 REAL, DIMENSION(:), INTENT(IN) :: pdroot
169 REAL, DIMENSION(:), INTENT(IN) :: pdg2
170 REAL, DIMENSION(:,:), INTENT(IN) :: prootfrac
171 REAL, DIMENSION(:), POINTER :: prunoffd
172 REAL, DIMENSION(:,:), POINTER :: pdzg
173 REAL, DIMENSION(:,:), POINTER :: pdzdif
174 REAL, DIMENSION(:,:), POINTER :: psoilwght
175 INTEGER, DIMENSION(:), INTENT(IN) :: kwg_layer
176 INTEGER, INTENT(OUT) :: klayer_hort
177 INTEGER, INTENT(OUT) :: klayer_dun
178 !
179 REAL, DIMENSION(:), INTENT(INOUT) :: pd_ice
180 REAL, DIMENSION(:), POINTER :: pksat_ice
181 !
182 REAL, DIMENSION(:), POINTER :: palbnir_dry
183 REAL, DIMENSION(:), POINTER :: palbvis_dry
184 REAL, DIMENSION(:), POINTER :: palbuv_dry
185 REAL, DIMENSION(:), POINTER :: palbnir_wet
186 REAL, DIMENSION(:), POINTER :: palbvis_wet
187 REAL, DIMENSION(:), POINTER :: palbuv_wet
188 !
189 REAL, DIMENSION(:), POINTER :: pbslai_nitro
190 REAL, DIMENSION(:), INTENT(IN) :: pce_nitro
191 REAL, DIMENSION(:), INTENT(IN) :: pcna_nitro
192 REAL, DIMENSION(:), INTENT(IN) :: pcf_nitro
193 !
194 !* 0.2 Declarations of local variables
195 ! -------------------------------
196 !
197 REAL, DIMENSION(:,:), POINTER :: zpatch
198 REAL, DIMENSION(:,:,:), POINTER :: zvegtype_patch
199 INTEGER, DIMENSION(:), POINTER :: isize_nature_p
200 INTEGER, DIMENSION(:,:), POINTER :: ir_nature_p
201 REAL, DIMENSION(0) :: ztdeep_cli, zgammat_cli, zthreshold
202 INTEGER, DIMENSION(:,:), POINTER :: iirrinum
203 LOGICAL, DIMENSION(:,:), POINTER :: girriday
204 LOGICAL, DIMENSION(:,:), POINTER :: girrigate
205 REAL, DIMENSION(:,:), POINTER :: zthresholdspt
206 REAL, DIMENSION(:,:,:), POINTER :: zincrease
207 REAL, DIMENSION(:,:,:), POINTER :: zturnover
208 REAL, DIMENSION(:,:,:), POINTER :: zsfdst
209 REAL, DIMENSION(:,:,:), POINTER :: zsfdstm
210 REAL, DIMENSION(:,:,:), POINTER :: zsfslt
211 REAL, DIMENSION(0) :: zaosip, zaosim, zaosjp, zaosjm
212 REAL, DIMENSION(0) :: zho2ip, zho2im, zho2jp, zho2jm
213 REAL, DIMENSION(0,0) :: zz0
214 REAL, DIMENSION(:,:), POINTER :: zz0effip
215 REAL, DIMENSION(:,:), POINTER :: zz0effim
216 REAL, DIMENSION(:,:), POINTER :: zz0effjp
217 REAL, DIMENSION(:,:), POINTER :: zz0effjm
218 REAL, DIMENSION(:), POINTER :: zz0rel
219 !
220 REAL, DIMENSION(:,:), POINTER :: zc1sat
221 REAL, DIMENSION(:,:), POINTER :: zc2ref
222 REAL, DIMENSION(:,:), POINTER :: zc4ref
223 REAL, DIMENSION(:,:,:), POINTER :: zc3
224 !
225 REAL, DIMENSION(:,:), POINTER :: zpcps
226 REAL, DIMENSION(:,:), POINTER :: zplvtt
227 REAL, DIMENSION(:,:), POINTER :: zplstt
228 !
229 REAL, DIMENSION(:,:), POINTER :: zksat_ice
230 REAL, DIMENSION(:,:,:), POINTER :: zdzg
231 REAL, DIMENSION(:,:,:), POINTER :: zdzdif
232 REAL, DIMENSION(:,:,:), POINTER :: zsoilwght
233 REAL, DIMENSION(:,:,:), POINTER :: zcondsat
234 REAL, DIMENSION(:,:), POINTER :: zrunoffd
235 REAL, DIMENSION(:,:), POINTER :: zbslai_nitro
236 REAL, DIMENSION(:,:), POINTER :: zanmax
237 REAL, DIMENSION(:,:), POINTER :: zfzero
238 REAL, DIMENSION(:,:), POINTER :: zepso
239 REAL, DIMENSION(:,:), POINTER :: zgamm
240 REAL, DIMENSION(:,:), POINTER :: zqdgamm
241 REAL, DIMENSION(:,:), POINTER :: zqdgmes
242 REAL, DIMENSION(:,:), POINTER :: zt1gmes
243 REAL, DIMENSION(:,:), POINTER :: zt2gmes
244 REAL, DIMENSION(:,:), POINTER :: zamax
245 REAL, DIMENSION(:,:), POINTER :: zqdamax
246 REAL, DIMENSION(:,:), POINTER :: zt1amax
247 REAL, DIMENSION(:,:), POINTER :: zt2amax
248 REAL, DIMENSION(:,:), POINTER :: zah
249 REAL, DIMENSION(:,:), POINTER :: zbh
250 REAL, DIMENSION(:,:), POINTER :: ztau_wood
251 REAL, DIMENSION(:,:), POINTER :: zkaniso
252 REAL, DIMENSION(:,:), POINTER :: zwd0
253 !
254 REAL, DIMENSION(:), POINTER :: zfwtd ! grid-cell fraction of water table to rise
255 REAL, DIMENSION(:), POINTER :: zwtd ! water table depth from Obs, TRIP or MODCOU
256 !
257 REAL, DIMENSION(SIZE(PDG,1),SIZE(PDG,2),1) :: zdg
258 REAL, DIMENSION(SIZE(PDROOT),1) :: zdroot
259 REAL, DIMENSION(SIZE(PDG2),1) :: zdg2
260 REAL, DIMENSION(SIZE(PD_ICE),1) :: zd_ice
261 REAL, DIMENSION(SIZE(PROOTFRAC,1),SIZE(PROOTFRAC,2),1) :: zrootfrac
262 REAL, DIMENSION(SIZE(PCE_NITRO),1) :: zce_nitro
263 REAL, DIMENSION(SIZE(PCNA_NITRO),1) :: zcna_nitro
264 REAL, DIMENSION(SIZE(PCF_NITRO),1) :: zcf_nitro
265 REAL, DIMENSION(SIZE(PGMES),1) :: zgmes
266 REAL, DIMENSION(SIZE(PGC),1) :: zgc
267 REAL, DIMENSION(SIZE(PDMAX),1) :: zdmax
268 INTEGER, DIMENSION(SIZE(KWG_LAYER),1) :: iwg_layer
269 !
270 REAL(KIND=JPRB) :: zhook_handle
271 !
272 !-------------------------------------------------------------------------------
273 ! Initialisation for IO
274 !
275 IF (lhook) CALL dr_hook('INIT_VEG_PGD_GARDEN_n',0,zhook_handle)
276 !
277 !* 2.4 Fraction of each tile
278 ! ---------------------
279 !
280 nullify(zpatch)
281 nullify(zvegtype_patch)
282 nullify(isize_nature_p)
283 nullify(ir_nature_p)
284 nullify(iirrinum)
285 nullify(girriday)
286 nullify(girrigate)
287 nullify(zthresholdspt)
288 nullify(zincrease)
289 nullify(zturnover)
290 nullify(zsfdst)
291 nullify(zsfdstm)
292 nullify(zsfslt)
293 nullify(zz0effip)
294 nullify(zz0effim)
295 nullify(zz0effjp)
296 nullify(zz0effjm)
297 nullify(zz0rel)
298 !
299 nullify(zc1sat)
300 nullify(zc2ref)
301 nullify(zc4ref)
302 nullify(zc3)
303 !
304 nullify(zpcps)
305 nullify(zplvtt)
306 nullify(zplstt)
307 !
308 nullify(zksat_ice)
309 nullify(zdzg)
310 nullify(zdzdif)
311 nullify(zsoilwght)
312 nullify(zcondsat)
313 nullify(zrunoffd)
314 nullify(zbslai_nitro)
315 nullify(zanmax)
316 nullify(zfzero)
317 nullify(zepso)
318 nullify(zgamm)
319 nullify(zqdgamm)
320 nullify(zqdgmes)
321 nullify(zt1gmes)
322 nullify(zt2gmes)
323 nullify(zamax)
324 nullify(zt1amax)
325 nullify(zt2amax)
326 nullify(zah)
327 nullify(zbh)
328 nullify(ztau_wood)
329 nullify(zfwtd)
330 nullify(zwtd)
331 nullify(zwd0)
332 nullify(zkaniso)
333 !
334 zdg(:,:,1) = pdg(:,:)
335 zrootfrac(:,:,1) = prootfrac(:,:)
336 zdroot(:,1) = pdroot(:)
337 zdg2(:,1) = pdg2(:)
338 zd_ice(:,1) = pd_ice(:)
339 iwg_layer(:,1) = kwg_layer(:)
340 zce_nitro(:,1) = pce_nitro(:)
341 zcna_nitro(:,1) = pcna_nitro(:)
342 zcf_nitro(:,1) = pcf_nitro(:)
343 zgmes(:,1) = pgmes(:)
344 zgc(:,1) = pgc(:)
345 zdmax(:,1) = pdmax(:)
346 !
347  CALL init_veg_pgd_n(chi, dtco, dst, i, slt, u, &
348  hprogram, 'TOWN ',kluout, ki, 1, kground_layer, kmonth, &
349  pvegtype, zpatch, zvegtype_patch, isize_nature_p, ir_nature_p, &
350  0.0, &
351  .false., .false., ztdeep_cli, zgammat_cli, ptdeep, pgammat, &
352  .false., zthreshold, iirrinum, girriday, girrigate, zthresholdspt, &
353  hphoto, hinit, otr_ml, knbiomass, pco2, prhoa, pabc, ppoi, &
354  zgmes, zgc, zdmax, zanmax, zfzero, zepso, zgamm, zqdgamm, &
355  zqdgmes, zt1gmes, zt2gmes, zamax, zqdamax, zt1amax, zt2amax,&
356  zah, zbh, ztau_wood, zincrease, zturnover, &
357  ksv, hsv, ysv, hch_names, haer_names, hdstnames, hsltnames, &
358  hchem_surf_file, &
359  zsfdst, zsfdstm, zsfslt, &
360  zaosip, zaosim, zaosjp, zaosjm, zho2ip, zho2im, zho2jp, &
361  zho2jm, zz0, zz0effip, zz0effim, zz0effjp, zz0effjm, zz0rel,&
362  pclay, psand, hpedotf, &
363  zcondsat, pmpotsat, pbcoef, pwwilt, pwfc, pwsat, zwd0, &
364  zkaniso, hrunoff, &
365  ptauice, pcgsat, zc1sat, zc2ref, zc3, pc4b, pacoef, ppcoef, &
366  zc4ref, zpcps, zplvtt, zplstt, &
367  hscond, hisba, phcapsoil, pconddry, pcondsld, hcpsurf, &
368  zdg, zdroot, zdg2, zrootfrac, zrunoffd, zdzg, zdzdif, &
369  zsoilwght, iwg_layer, klayer_hort, klayer_dun, zd_ice, &
370  zksat_ice, palbnir_dry, palbvis_dry, palbuv_dry, &
371  palbnir_wet, palbvis_wet, palbuv_wet, zbslai_nitro, &
372  zce_nitro, zcna_nitro, zcf_nitro, zfwtd, zwtd )
373 !
374 ALLOCATE(ppcps(SIZE(zpcps,1)))
375 IF (SIZE(zpcps)>0) &
376 ppcps(:) = zpcps(:,1)
377 
378 ALLOCATE(pplvtt(SIZE(zplvtt,1)))
379 IF (SIZE(zplvtt)>0) &
380 pplvtt(:) = zplvtt(:,1)
381 
382 ALLOCATE(pplstt(SIZE(zplstt,1)))
383 IF (SIZE(zplstt)>0) &
384 pplstt(:) = zplstt(:,1)
385 
386 IF (SIZE(zd_ice)>0) &
387 pd_ice(:) = zd_ice(:,1)
388 
389 ALLOCATE(pksat_ice(SIZE(zksat_ice,1)))
390 IF (SIZE(zksat_ice)>0) &
391 pksat_ice(:) = zksat_ice(:,1)
392 
393 ALLOCATE(pdzg(SIZE(zdzg,1),SIZE(zdzg,2)))
394 IF (SIZE(zdzg)>0) &
395 pdzg(:,:) = zdzg(:,:,1)
396 
397 ALLOCATE(pdzdif(SIZE(zdzdif,1),SIZE(zdzdif,2)))
398 IF (SIZE(zdzdif)>0) &
399 pdzdif(:,:) = zdzdif(:,:,1)
400 
401 ALLOCATE(psoilwght(SIZE(zsoilwght,1),SIZE(zsoilwght,2)))
402 IF (SIZE(zsoilwght)>0) &
403 psoilwght(:,:) = zsoilwght(:,:,1)
404 
405 ALLOCATE(pcondsat(SIZE(zcondsat,1),SIZE(zcondsat,2)))
406 IF (SIZE(zcondsat)>0) &
407 pcondsat(:,:) = zcondsat(:,:,1)
408 
409 ALLOCATE(pc1sat(SIZE(zc1sat,1)))
410 IF (SIZE(zc1sat)>0) &
411 pc1sat(:) = zc1sat(:,1)
412 
413 ALLOCATE(pc2ref(SIZE(zc2ref,1)))
414 IF (SIZE(zc2ref)>0) &
415 pc2ref(:) = zc2ref(:,1)
416 
417 ALLOCATE(pc4ref(SIZE(zc4ref,1)))
418 IF (SIZE(zc4ref)>0) &
419 pc4ref(:) = zc4ref(:,1)
420 
421 ALLOCATE(pc3(SIZE(zc3,1),SIZE(zc3,2)))
422 IF (SIZE(zc3)>0) &
423 pc3(:,:) = zc3(:,:,1)
424 
425 ALLOCATE(prunoffd(SIZE(zrunoffd,1)))
426 IF (SIZE(zrunoffd)>0) &
427 prunoffd(:) = zrunoffd(:,1)
428 
429 ALLOCATE(pbslai_nitro(SIZE(zbslai_nitro,1)))
430 IF (SIZE(zbslai_nitro)>0) &
431 pbslai_nitro(:) = zbslai_nitro(:,1)
432 
433 ALLOCATE(panmax(SIZE(zanmax,1)))
434 IF (SIZE(panmax)>0) &
435 panmax(:) = zanmax(:,1)
436 
437 ALLOCATE(pfzero(SIZE(zfzero,1)))
438 IF (SIZE(zfzero)>0) &
439 pfzero(:) = zfzero(:,1)
440 
441 ALLOCATE(pepso(SIZE(zepso,1)))
442 IF (SIZE(zepso)>0) &
443 pepso(:) = zepso(:,1)
444 
445 ALLOCATE(pgamm(SIZE(zgamm,1)))
446 IF (SIZE(zgamm)>0) &
447 pgamm(:) = zgamm(:,1)
448 
449 ALLOCATE(pqdgamm(SIZE(zqdgamm,1)))
450 IF (SIZE(zqdgamm)>0) &
451 pqdgamm(:) = zqdgamm(:,1)
452 
453 ALLOCATE(pqdgmes(SIZE(zqdgmes,1)))
454 IF (SIZE(zqdgmes)>0) &
455 pqdgmes(:) = zqdgmes(:,1)
456 
457 ALLOCATE(pt1gmes(SIZE(zt1gmes,1)))
458 IF (SIZE(zt1gmes)>0) &
459 pt1gmes(:) = zt1gmes(:,1)
460 
461 ALLOCATE(pt2gmes(SIZE(zt2gmes,1)))
462 IF (SIZE(zt2gmes)>0) &
463 pt2gmes(:) = zt2gmes(:,1)
464 
465 ALLOCATE(pamax(SIZE(zamax,1)))
466 IF (SIZE(zamax)>0) &
467 pamax(:) = zamax(:,1)
468 
469 ALLOCATE(pqdamax(SIZE(zqdamax,1)))
470 IF (SIZE(zqdamax)>0) &
471 pqdamax(:) = zqdamax(:,1)
472 
473 ALLOCATE(pt1amax(SIZE(zt1amax,1)))
474 IF (SIZE(zt1amax)>0) &
475 pt1amax(:) = zt1amax(:,1)
476 
477 ALLOCATE(pt2amax(SIZE(zt2amax,1)))
478 IF (SIZE(zt2amax)>0) &
479 pt2amax(:) = zt2amax(:,1)
480 
481 ALLOCATE(pah(SIZE(zah,1)))
482 IF (SIZE(zah)>0) &
483 pah(:) = zah(:,1)
484 
485 ALLOCATE(pbh(SIZE(zbh,1)))
486 IF (SIZE(zbh)>0) &
487 pbh(:) = zbh(:,1)
488 !
489 IF (lhook) CALL dr_hook('INIT_VEG_PGD_GARDEN_n',1,zhook_handle)
490 !
491 END SUBROUTINE init_veg_pgd_garden_n
subroutine init_veg_pgd_garden_n(CHI, DTCO, DST, I, SLT, U, HPROGRAM, KLUOUT, KI, KGROUND_LAYER, KMONTH, PVEGTYPE, PTDEEP, PGAMMAT, HPHOTO, HINIT, OTR_ML, HRUNOFF, KNBIOMASS, PCO2, PRHOA, PABC, PPOI, PGMES, PGC, PDMAX, PANMAX, PFZERO, PEPSO, PGAMM, PQDGAMM, PQDGMES, PT1GMES, PT2GMES, PAMAX, PQDAMAX, PT1AMAX, PT2AMAX, PAH, PBH, KSV, HSV, YSV, HCH_NAMES, HAER_NAMES, HDSTNAMES, HSLTNAMES, HCHEM_SURF_FILE, PCLAY, PSAND, HPEDOTF, PCONDSAT, PMPOTSAT, PBCOEF, PWWILT, PWFC, PWSAT, PTAUICE, PCGSAT, PC1SAT, PC2REF, PC3, PC4B, PACOEF, PPCOEF, PC4REF, PPCPS, PPLVTT, PPLSTT, HSCOND, HISBA, PHCAPSOIL, PCONDDRY, PCONDSLD, HCPSURF, PDG, PDROOT, PDG2, PROOTFRAC, PRUNOFFD, PDZG, PDZDIF, PSOILWGHT, KWG_LAYER, KLAYER_HORT, KLAYER_DUN, PD_ICE, PKSAT_ICE, PALBNIR_DRY, PALBVIS_DRY, PALBUV_DRY, PALBNIR_WET, PALBVIS_WET, PALBUV_WET, PBSLAI_NITRO, PCE_NITRO, PCNA_NITRO, PCF_NITRO)
subroutine init_veg_pgd_n(CHI, DTCO, DST, I, SLT, U, HPROGRAM, HSURF, KLUOUT, KI, KPATCH, KGROUND_LAYER, KMONTH, PVEGTYPE, PPATCH, PVEGTYPE_PATCH, KSIZE_NATURE_P, KR_NATURE_P, PRM_PATCH, ODEEPSOIL, OPHYSDOMC, PTDEEP_CLI, PGAMMAT_CLI, PTDEEP, PGAMMAT, OAGRIP, PTHRESHOLD, KIRRINUM, OIRRIDAY, OIRRIGATE, PTHRESHOLDSPT, HPHOTO, HINIT, OTR_ML, KNBIOMASS, PCO2, PRHOA, PABC, PPOI, PGMES, PGC, PDMAX, PANMAX, PFZERO, PEPSO, PGAMM, PQDGAMM, PQDGMES, PT1GMES, PT2GMES, PAMAX, PQDAMAX, PT1AMAX, PT2AMAX, PAH, PBH, PTAU_WOOD, PINCREASE, PTURNOVER, KSV, HSV, YSV, HCH_NAMES, HAER_NAMES, HDSTNAMES, HSLTNAMES, HCHEM_SURF_FILE, PSFDST, PSFDSTM, PSFSLT, PAOSIP, PAOSIM, PAOSJP, PAOSJM, PHO2IP, PHO2IM, PHO2JP, PHO2JM, PZ0, PZ0EFFIP, PZ0EFFIM, PZ0EFFJP, PZ0EFFJM, PZ0REL, PCLAY, PSAND, HPEDOTF, PCONDSAT, PMPOTSAT, PBCOEF, PWWILT, PWFC, PWSAT, PWD0, PKANISO, HRUNOFF, PTAUICE, PCGSAT, PC1SAT, PC2REF, PC3, PC4B, PACOEF, PPCOEF, PC4REF, PPCPS, PPLVTT, PPLSTT, HSCOND, HISBA, PHCAPSOIL, PCONDDRY, PCONDSLD, HCPSURF, PDG, PDROOT, PDG2, PROOTFRAC, PRUNOFFD, PDZG, PDZDIF, PSOILWGHT, KWG_LAYER, KLAYER_HORT, KLAYER_DUN, PD_ICE, PKSAT_ICE, PALBNIR_DRY, PALBVIS_DRY, PALBUV_DRY, PALBNIR_WET, PALBVIS_WET, PALBUV_WET, PBSLAI_NITRO, PCE_NITRO, PCNA_NITRO, PCF_NITRO, PFWTD, PWTD)