SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
unpack_isba_patchn.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 unpack_isba_patch_n (AG, I, PKI, &
7  kmask,ksize,kpatch)
8 !##############################################
9 !
10 !!**** *UNPACK_ISBA_PATCH_n* - unpacks ISBA prognostic variables
11 !!
12 !! PURPOSE
13 !! -------
14 !
15 !!** METHOD
16 !! ------
17 !!
18 !! REFERENCE
19 !! ---------
20 !!
21 !!
22 !! AUTHOR
23 !! ------
24 !! A. Boone
25 !!
26 !! MODIFICATIONS
27 !! -------------
28 !! Original 01/2004
29 !! B. Decharme 2008 Floodplains
30 !! A.L. Gibelin 04/2009 : BIOMASS and RESP_BIOMASS arrays
31 !! A.L. Gibelin 04/2009 : TAU_WOOD for NCB option
32 !! A.L. Gibelin 05/2009 : Add carbon spinup
33 !! A.L. Gibelin 06/2009 : Soil carbon variables for CNT option
34 !! A.L. Gibelin 07/2009 : Suppress RDK and transform GPP as a diagnostic
35 !! A.L. Gibelin 07/2009 : Suppress PPST and PPSTF as outputs
36 !! B. Decharme 06/2013 : add lateral drainage flux diag for DIF
37 !! water table / surface coupling
38 !! P. Samuelsson 02/2012 : MEB
39 !!
40 !!------------------------------------------------------------------
41 !
42 
43 !
44 USE modd_agri_n, ONLY : agri_t
45 USE modd_isba_n, ONLY : isba_t
46 USE modd_pack_isba, ONLY : pack_isba_t
47 !
48 USE modd_agri, ONLY : lagrip
49 
50 !
51 USE modd_surf_par, ONLY : xundef
52 !
53 !
54 USE yomhook ,ONLY : lhook, dr_hook
55 USE parkind1 ,ONLY : jprb
56 !
57 IMPLICIT NONE
58 !
59 !
60 TYPE(agri_t), INTENT(INOUT) :: ag
61 TYPE(isba_t), INTENT(INOUT) :: i
62 TYPE(pack_isba_t), INTENT(INOUT) :: pki
63 !
64 INTEGER, INTENT(IN) :: ksize, kpatch
65 !
66 INTEGER, DIMENSION(:), INTENT(IN) :: kmask
67 !
68 INTEGER jj, ji, jk, jl
69 REAL(KIND=JPRB) :: zhook_handle
70 !
71 !------------------------------------------------------------------
72 !
73 IF (lhook) CALL dr_hook('UNPACK_ISBA_PATCH_N',0,zhook_handle)
74 IF (i%NPATCH==1) THEN
75  i%TSNOW%WSNOW (:, :, 1) = pki%XP_SNOWSWE (:, :)
76  i%TSNOW%RHO (:, :, 1) = pki%XP_SNOWRHO (:, :)
77  i%TSNOW%ALB (:, 1) = pki%XP_SNOWALB (:)
78  i%XWR (:, 1) = pki%XP_WR (:)
79  i%XTG (:, :, 1) = pki%XP_TG (:, :)
80  i%XWG (:, :, 1) = pki%XP_WG (:, :)
81  i%XWGI (:, :, 1) = pki%XP_WGI (:, :)
82  i%XRESA (:, 1) = pki%XP_RESA (:)
83  i%XPCPS (:, 1) = pki%XP_CPS (:)
84  i%XPLVTT (:, 1) = pki%XP_LVTT (:)
85  i%XPLSTT (:, 1) = pki%XP_LSTT (:)
86  i%XALBNIR (:, 1) = pki%XP_ALBNIR (:)
87  i%XALBVIS (:, 1) = pki%XP_ALBVIS (:)
88  i%XALBUV (:, 1) = pki%XP_ALBUV (:)
89  i%XALBNIR_VEG (:, 1) = pki%XP_ALBNIR_VEG (:)
90  i%XALBVIS_VEG (:, 1) = pki%XP_ALBVIS_VEG (:)
91  i%XALBUV_VEG (:, 1) = pki%XP_ALBUV_VEG (:)
92  i%XALBNIR_SOIL (:, 1) = pki%XP_ALBNIR_SOIL(:)
93  i%XALBVIS_SOIL (:, 1) = pki%XP_ALBVIS_SOIL(:)
94  i%XALBUV_SOIL (:, 1) = pki%XP_ALBUV_SOIL (:)
95  i%XEMIS (:, 1) = pki%XP_EMIS (:)
96  i%XZ0EFFIP (:, 1) = pki%XP_Z0EFFIP (:)
97  i%XZ0EFFIM (:, 1) = pki%XP_Z0EFFIM (:)
98  i%XZ0EFFJP (:, 1) = pki%XP_Z0EFFJP (:)
99  i%XZ0EFFJM (:, 1) = pki%XP_Z0EFFJM (:)
100  i%XLE (:, 1) = pki%XP_LE (:)
101  !
102  IF(i%LMEB_PATCH(kpatch))THEN
103  i%XWRL (:, 1) = pki%XP_WRL (:)
104  i%XWRLI (:, 1) = pki%XP_WRLI (:)
105  i%XWRVN (:, 1) = pki%XP_WRVN (:)
106  i%XTV (:, 1) = pki%XP_TV (:)
107  i%XTL (:, 1) = pki%XP_TL (:)
108  i%XTC (:, 1) = pki%XP_TC (:)
109  i%XQC (:, 1) = pki%XP_QC (:)
110  i%XLAI (:, 1) = pki%XP_LAI (:)
111  i%XZ0 (:, 1) = pki%XP_Z0 (:)
112  ELSE
113 ! Please note that XLAI, XVEG, and XZ0 are not unpacked
114 ! in the case of MEB.
115  i%XLAI (:, 1) = pki%XP_LAI (:)
116  i%XVEG (:, 1) = pki%XP_VEG (:)
117  i%XZ0 (:, 1) = pki%XP_Z0 (:)
118  ENDIF
119  !
120  IF (i%LTR_ML) THEN
121  i%XFAPARC (:, 1) = pki%XP_FAPARC (:)
122  i%XFAPIRC (:, 1) = pki%XP_FAPIRC (:)
123  i%XLAI_EFFC (:, 1) = pki%XP_LAI_EFFC (:)
124  i%XMUS (:, 1) = pki%XP_MUS (:)
125  ENDIF
126  !
127  IF (i%CPHOTO/='NON') THEN
128  i%XAN (:, 1) = pki%XP_AN (:)
129  i%XANDAY (:, 1) = pki%XP_ANDAY (:)
130  i%XANFM (:, 1) = pki%XP_ANFM (:)
131  i%XBIOMASS (:,:,1) = pki%XP_BIOMASS (:,:)
132  i%XRESP_BIOMASS (:,:,1) = pki%XP_RESP_BIOMASS (:,:)
133  END IF
134  !
135  IF(i%CPHOTO=='NIT' .OR. i%CPHOTO=='NCB') THEN
136  i%XBSLAI_NITRO (:,1) = pki%XP_BSLAI_NITRO (:)
137  END IF
138  !
139  IF(i%CPHOTO=='NCB') THEN
140  i%XINCREASE (:,:,1) = pki%XP_INCREASE (:,:)
141  END IF
142  !
143  IF(i%CRESPSL=='CNT') THEN
144  i%XLITTER (:,:,:,1) = pki%XP_LITTER (:,:,:)
145  i%XSOILCARB (:,:,1) = pki%XP_SOILCARB (:,:)
146  i%XLIGNIN_STRUC (:,:,1) = pki%XP_LIGNIN_STRUC (:,:)
147  i%XTURNOVER (:,:,1) = pki%XP_TURNOVER (:,:)
148  END IF
149  !
150  IF(lagrip .AND. (i%CPHOTO=='NIT' .OR. i%CPHOTO=='LAI' .OR. i%CPHOTO=='LST' .OR. i%CPHOTO=='NCB') ) THEN
151  ag%LIRRIDAY (:,1) = pki%XP_LIRRIDAY (:)
152  END IF
153  !
154  IF (i%TSNOW%SCHEME=='3-L' .OR. i%TSNOW%SCHEME=='CRO') THEN
155  i%TSNOW%HEAT (:, :, 1) = pki%XP_SNOWHEAT (:, :)
156  i%TSNOW%EMIS (:, 1) = pki%XP_SNOWEMIS (:)
157  i%TSNOW%AGE (:, :, 1) = pki%XP_SNOWAGE (:, :)
158  i%TSNOW%ALBVIS (:, 1) = pki%XP_SNOWALBVIS (:)
159  i%TSNOW%ALBNIR (:, 1) = pki%XP_SNOWALBNIR (:)
160  i%TSNOW%ALBFIR (:, 1) = pki%XP_SNOWALBFIR (:)
161  END IF
162 
163  IF (i%TSNOW%SCHEME=='CRO') THEN
164  i%TSNOW%GRAN1 (:, :, 1) = pki%XP_SNOWGRAN1 (:, :)
165  i%TSNOW%GRAN2 (:, :, 1) = pki%XP_SNOWGRAN2 (:, :)
166  i%TSNOW%HIST (:, :, 1) = pki%XP_SNOWHIST (:, :)
167  END IF
168  !
169  IF(i%LGLACIER)THEN
170  i%XICE_STO (:,1) = pki%XP_ICE_STO (:)
171  ENDIF
172 !
173 ELSE
174 !
175 ! Only save values for patches which are in use:
176 !
177  DO jj=1,ksize
178  ji = kmask(jj)
179  i%TSNOW%ALB (ji, kpatch) = pki%XP_SNOWALB (jj)
180  i%XWR (ji, kpatch) = pki%XP_WR (jj)
181  i%XRESA (ji, kpatch) = pki%XP_RESA (jj)
182  i%XPCPS (ji, kpatch) = pki%XP_CPS (jj)
183  i%XPLVTT (ji, kpatch) = pki%XP_LVTT (jj)
184  i%XPLSTT (ji, kpatch) = pki%XP_LSTT (jj)
185  i%XALBNIR (ji, kpatch) = pki%XP_ALBNIR (jj)
186  i%XALBVIS (ji, kpatch) = pki%XP_ALBVIS (jj)
187  i%XALBUV (ji, kpatch) = pki%XP_ALBUV (jj)
188  i%XALBNIR_VEG (ji, kpatch) = pki%XP_ALBNIR_VEG (jj)
189  i%XALBVIS_VEG (ji, kpatch) = pki%XP_ALBVIS_VEG (jj)
190  i%XALBUV_VEG (ji, kpatch) = pki%XP_ALBUV_VEG (jj)
191  i%XALBNIR_SOIL (ji, kpatch) = pki%XP_ALBNIR_SOIL(jj)
192  i%XALBVIS_SOIL (ji, kpatch) = pki%XP_ALBVIS_SOIL(jj)
193  i%XALBUV_SOIL (ji, kpatch) = pki%XP_ALBUV_SOIL (jj)
194  i%XEMIS (ji, kpatch) = pki%XP_EMIS (jj)
195  i%XZ0EFFIP (ji, kpatch) = pki%XP_Z0EFFIP (jj)
196  i%XZ0EFFIM (ji, kpatch) = pki%XP_Z0EFFIM (jj)
197  i%XZ0EFFJP (ji, kpatch) = pki%XP_Z0EFFJP (jj)
198  i%XZ0EFFJM (ji, kpatch) = pki%XP_Z0EFFJM (jj)
199  i%XLE (ji, kpatch) = pki%XP_LE (jj)
200  !
201  END DO
202  !
203  IF(i%LMEB_PATCH(kpatch))THEN
204  DO jj=1,ksize
205  ji = kmask(jj)
206  i%XWRL (ji, kpatch) = pki%XP_WRL (jj)
207  i%XWRLI (ji, kpatch) = pki%XP_WRLI (jj)
208  i%XWRVN (ji, kpatch) = pki%XP_WRVN (jj)
209  i%XTV (ji, kpatch) = pki%XP_TV (jj)
210  i%XTL (ji, kpatch) = pki%XP_TL (jj)
211  i%XTC (ji, kpatch) = pki%XP_TC (jj)
212  i%XQC (ji, kpatch) = pki%XP_QC (jj)
213  i%XLAI (ji, kpatch) = pki%XP_LAI (jj)
214  i%XZ0 (ji, kpatch) = pki%XP_Z0 (jj)
215  END DO
216  ELSE
217 ! Please note that XLAI, XVEG, and XZ0 are not unpacked
218 ! in the case of MEB yet. This must be done when interactive/carbon
219 ! vegetation is activated for MEB.
220  DO jj=1,ksize
221  ji = kmask(jj)
222  i%XLAI (ji, kpatch) = pki%XP_LAI (jj)
223  i%XVEG (ji, kpatch) = pki%XP_VEG (jj)
224  i%XZ0 (ji, kpatch) = pki%XP_Z0 (jj)
225  END DO
226  ENDIF
227  !
228  DO jk=1,SIZE(i%XTG,2)
229  DO jj=1,ksize
230  ji = kmask(jj)
231  i%XTG (ji, jk, kpatch) = pki%XP_TG (jj, jk)
232  ENDDO
233  ENDDO
234 !
235  DO jk=1,SIZE(i%XWG,2)
236  DO jj=1,ksize
237  ji = kmask(jj)
238  i%XWG (ji, jk, kpatch) = pki%XP_WG (jj, jk)
239  i%XWGI (ji, jk, kpatch) = pki%XP_WGI (jj, jk)
240  ENDDO
241  ENDDO
242 !
243  DO jk=1,SIZE(pki%XP_SNOWSWE,2)
244  DO jj=1,ksize
245  ji = kmask(jj)
246  i%TSNOW%WSNOW (ji, jk, kpatch) = pki%XP_SNOWSWE (jj, jk)
247  i%TSNOW%RHO (ji, jk, kpatch) = pki%XP_SNOWRHO (jj, jk)
248  ENDDO
249  ENDDO
250  !
251  IF (i%LTR_ML) THEN
252  DO jj=1,ksize
253  ji = kmask(jj)
254  i%XFAPARC (ji, kpatch) = pki%XP_FAPARC (jj)
255  i%XFAPIRC (ji, kpatch) = pki%XP_FAPIRC (jj)
256  i%XLAI_EFFC (ji, kpatch) = pki%XP_LAI_EFFC (jj)
257  i%XMUS (ji, kpatch) = pki%XP_MUS (jj)
258  ENDDO
259  ENDIF
260  !
261  IF (i%CPHOTO/='NON') THEN
262  DO jj=1,ksize
263  ji = kmask(jj)
264  i%XAN (ji, kpatch) = pki%XP_AN (jj)
265  i%XANDAY (ji, kpatch) = pki%XP_ANDAY (jj)
266  i%XANFM (ji, kpatch) = pki%XP_ANFM (jj)
267  ENDDO
268  DO jk=1,SIZE(i%XBIOMASS,2)
269  DO jj=1,ksize
270  ji = kmask(jj)
271  i%XBIOMASS (ji, jk, kpatch) = pki%XP_BIOMASS (jj, jk)
272  i%XRESP_BIOMASS (ji, jk, kpatch) = pki%XP_RESP_BIOMASS (jj, jk)
273  ENDDO
274  END DO
275  END IF
276  !
277  IF (i%CPHOTO=='NIT' .OR. i%CPHOTO=='NCB') THEN
278  DO jj=1,ksize
279  ji = kmask(jj)
280  i%XBSLAI_NITRO (ji, kpatch) = pki%XP_BSLAI_NITRO (jj)
281  END DO
282  END IF
283  !
284  IF (i%CPHOTO=='NCB') THEN
285  DO jk=1,SIZE(i%XINCREASE,2)
286  DO jj=1,ksize
287  ji = kmask(jj)
288  i%XINCREASE (ji, jk, kpatch) = pki%XP_INCREASE (jj, jk)
289  ENDDO
290  END DO
291  END IF
292  !
293  IF (i%CRESPSL=='CNT') THEN
294  DO jl=1,SIZE(pki%XP_LITTER,3)
295  DO jk=1,SIZE(pki%XP_LITTER,2)
296  DO jj=1,ksize
297  ji = kmask(jj)
298  i%XLITTER (ji, jk, jl, kpatch) = pki%XP_LITTER (jj, jk, jl)
299  ENDDO
300  ENDDO
301  ENDDO
302  DO jk=1,SIZE(pki%XP_SOILCARB,2)
303  DO jj=1,ksize
304  ji = kmask(jj)
305  i%XSOILCARB (ji, jk, kpatch) = pki%XP_SOILCARB (jj, jk)
306  ENDDO
307  ENDDO
308  DO jk=1,SIZE(pki%XP_LIGNIN_STRUC,2)
309  DO jj=1,ksize
310  ji = kmask(jj)
311  i%XLIGNIN_STRUC (ji, jk, kpatch) = pki%XP_LIGNIN_STRUC (jj, jk)
312  ENDDO
313  ENDDO
314  DO jk=1,SIZE(pki%XP_TURNOVER,2)
315  DO jj=1,ksize
316  ji = kmask(jj)
317  i%XTURNOVER (ji, jk, kpatch) = pki%XP_TURNOVER (jj, jk)
318  ENDDO
319  END DO
320  END IF
321  !
322  IF(lagrip .AND. (i%CPHOTO=='NIT' .OR. i%CPHOTO=='LAI' .OR. i%CPHOTO=='LST' .OR. i%CPHOTO=='NCB') ) THEN
323  DO jj=1,ksize
324  ji = kmask(jj)
325  ag%LIRRIDAY (ji,kpatch) = pki%XP_LIRRIDAY (jj)
326  END DO
327  END IF
328  !
329  IF (i%TSNOW%SCHEME=='3-L' .OR. i%TSNOW%SCHEME=='CRO') THEN
330  DO jk=1,SIZE(pki%XP_SNOWHEAT,2)
331  DO jj=1,ksize
332  ji = kmask(jj)
333  i%TSNOW%HEAT (ji, jk, kpatch) = pki%XP_SNOWHEAT (jj, jk)
334  i%TSNOW%AGE (ji, jk, kpatch) = pki%XP_SNOWAGE (jj, jk)
335  ENDDO
336  ENDDO
337  DO jj=1,ksize
338  ji = kmask(jj)
339  i%TSNOW%EMIS (ji, kpatch) = pki%XP_SNOWEMIS (jj)
340  i%TSNOW%ALBVIS (ji, kpatch) = pki%XP_SNOWALBVIS (jj)
341  i%TSNOW%ALBNIR (ji, kpatch) = pki%XP_SNOWALBNIR (jj)
342  i%TSNOW%ALBFIR (ji, kpatch) = pki%XP_SNOWALBFIR (jj)
343  END DO
344  END IF
345 
346  IF (i%TSNOW%SCHEME=='CRO') THEN
347  DO jk=1,SIZE(pki%XP_SNOWGRAN1,2)
348  DO jj=1,ksize
349  ji = kmask(jj)
350  i%TSNOW%GRAN1 (ji, jk, kpatch) = pki%XP_SNOWGRAN1 (jj, jk)
351  i%TSNOW%GRAN2 (ji, jk, kpatch) = pki%XP_SNOWGRAN2 (jj, jk)
352  i%TSNOW%HIST (ji, jk, kpatch) = pki%XP_SNOWHIST (jj, jk)
353  ENDDO
354  END DO
355  END IF
356  !
357  IF(i%LGLACIER)THEN
358  DO jj=1,ksize
359  ji = kmask(jj)
360  i%XICE_STO(ji, kpatch) = pki%XP_ICE_STO(jj)
361  ENDDO
362  ENDIF
363 !
364 END IF
365 !
366 !------------------------------------------------------------------
367 !
368 pki%XP_Z0_O_Z0H => null()
369 pki%XP_EMIS => null()
370 pki%XP_ALBNIR => null()
371 pki%XP_ALBVIS => null()
372 pki%XP_ALBUV => null()
373 pki%XP_ALBNIR_VEG => null()
374 pki%XP_ALBVIS_VEG => null()
375 pki%XP_ALBUV_VEG => null()
376 pki%XP_ALBNIR_SOIL => null()
377 pki%XP_ALBVIS_SOIL => null()
378 pki%XP_ALBUV_SOIL => null()
379 pki%XP_Z0 => null()
380 pki%XP_WRMAX_CF => null()
381 pki%XP_GAMMA => null()
382 pki%XP_CV => null()
383 pki%XP_RGL => null()
384 pki%XP_RUNOFFD => null()
385 pki%XP_Z0EFFIP => null()
386 pki%XP_Z0EFFIM => null()
387 pki%XP_Z0EFFJP => null()
388 pki%XP_Z0EFFJM => null()
389 pki%XP_WR => null()
390 pki%XP_LAI => null()
391 pki%XP_RESA => null()
392 pki%XP_CPS => null()
393 pki%XP_LVTT => null()
394 pki%XP_LSTT => null()
395 pki%XP_VEG => null()
396 pki%XP_SNOWALB => null()
397 pki%XP_SNOWALBVIS => null()
398 pki%XP_SNOWALBNIR => null()
399 pki%XP_SNOWALBFIR => null()
400 pki%XP_LE => null()
401 pki%XP_PSN => null()
402 pki%XP_PSNG => null()
403 pki%XP_PSNV => null()
404 pki%XP_ALBNIR_DRY => null()
405 pki%XP_ALBVIS_DRY => null()
406 pki%XP_ALBUV_DRY => null()
407 pki%XP_ALBNIR_WET => null()
408 pki%XP_ALBVIS_WET => null()
409 pki%XP_ALBUV_WET => null()
410 pki%XP_RUNOFFB => null()
411 pki%XP_WDRAIN => null()
412 pki%XP_TAUICE => null()
413 pki%XP_Z0REL => null()
414 pki%XP_AOSIP => null()
415 pki%XP_AOSIM => null()
416 pki%XP_AOSJP => null()
417 pki%XP_AOSJM => null()
418 pki%XP_HO2IP => null()
419 pki%XP_HO2IM => null()
420 pki%XP_HO2JP => null()
421 pki%XP_HO2JM => null()
422 pki%XP_SSO_SLOPE => null()
423 pki%XP_GAMMAT => null()
424 pki%XP_TDEEP => null()
425 !
426 pki%XP_CLAY => null()
427 pki%XP_SAND => null()
428 pki%XP_WFC => null()
429 pki%XP_WWILT => null()
430 pki%XP_WSAT => null()
431 pki%XP_CONDSAT => null()
432 pki%XP_DG => null()
433 pki%XP_WG => null()
434 pki%XP_WGI => null()
435 !
436 pki%XP_KSAT_ICE => null()
437 pki%XP_D_ICE => null()
438 !
439 pki%XP_VEGTYPE_PATCH=> null()
440 !
441 pki%XP_TG => null()
442 !
443 pki%XP_SNOWSWE => null()
444 pki%XP_SNOWRHO => null()
445 !
446 pki%XP_DIR_ALB_WITH_SNOW=> null()
447 pki%XP_SCA_ALB_WITH_SNOW=> null()
448 !
449 pki%XP_FFLOOD => null()
450 pki%XP_PIFLOOD => null()
451 pki%XP_FF => null()
452 pki%XP_FFG => null()
453 pki%XP_FFV => null()
454 pki%XP_FFROZEN => null()
455 pki%XP_ALBF => null()
456 pki%XP_EMISF => null()
457 !
458 pki%XP_PSNV_A => null()
459 !
460 pki%XP_SNOWHEAT => null()
461 pki%XP_SNOWEMIS => null()
462 !
463 pki%XP_SNOWGRAN1 => null()
464 pki%XP_SNOWGRAN2 => null()
465 pki%XP_SNOWHIST => null()
466 pki%XP_SNOWAGE => null()
467 !
468 pki%XP_ICE_STO => null()
469 !
470 pki%XP_FWTD => null()
471 pki%XP_WTD => null()
472 !
473 pki%XP_HCAPSOIL => null()
474 !
475 pki%XP_CONDDRY => null()
476 pki%XP_CONDSLD => null()
477 !
478 pki%XP_C4B => null()
479 pki%XP_ACOEF => null()
480 pki%XP_PCOEF => null()
481 pki%XP_CGSAT => null()
482 pki%XP_C1SAT => null()
483 pki%XP_C2REF => null()
484 pki%XP_C4REF => null()
485 pki%XP_C3 => null()
486 !
487 pki%XP_MPOTSAT => null()
488 pki%XP_BCOEF => null()
489 !
490 pki%XP_ROOTFRAC => null()
491 pki%XP_DZG => null()
492 pki%XP_DZDIF => null()
493 pki%NK_WG_LAYER => null()
494 pki%XP_SOILWGHT => null()
495 !
496 pki%XP_RSMIN => null()
497 !
498 pki%XP_BSLAI => null()
499 pki%XP_LAIMIN => null()
500 pki%XP_SEFOLD => null()
501 pki%XP_H_TREE => null()
502 pki%XP_ANF => null()
503 pki%XP_ANMAX => null()
504 pki%XP_FZERO => null()
505 pki%XP_EPSO => null()
506 pki%XP_GAMM => null()
507 pki%XP_QDGAMM => null()
508 pki%XP_GMES => null()
509 pki%XP_RE25 => null()
510 pki%XP_QDGMES => null()
511 pki%XP_T1GMES => null()
512 pki%XP_T2GMES => null()
513 pki%XP_AMAX => null()
514 pki%XP_QDAMAX => null()
515 pki%XP_T1AMAX => null()
516 pki%XP_T2AMAX => null()
517 pki%XP_FAPARC => null()
518 pki%XP_FAPIRC => null()
519 pki%XP_LAI_EFFC => null()
520 pki%XP_MUS => null()
521 pki%XP_AN => null()
522 pki%XP_ANDAY => null()
523 pki%XP_ANFM => null()
524 pki%XP_GC => null()
525 pki%XP_LAT => null()
526 pki%XP_LON => null()
527 pki%XP_BIOMASS => null()
528 pki%XP_RESP_BIOMASS => null()
529 !
530 pki%LP_STRESS => null()
531 pki%XP_F2I => null()
532 pki%XP_AH => null()
533 pki%XP_BH => null()
534 pki%XP_DMAX => null()
535 !
536 pki%TP_SEED => null()
537 pki%TP_REAP => null()
538 pki%XP_IRRIG => null()
539 pki%XP_WATSUP => null()
540 !
541 pki%XP_LIRRIDAY => null()
542 pki%XP_THRESHOLD => null()
543 pki%XP_LIRRIGATE => null()
544 !
545 pki%XP_CE_NITRO => null()
546 pki%XP_CF_NITRO => null()
547 pki%XP_CNA_NITRO => null()
548 pki%XP_BSLAI_NITRO => null()
549 !
550 pki%XP_INCREASE => null()
551 pki%XP_TAU_WOOD => null()
552 !
553 pki%XP_LITTER => null()
554 pki%XP_SOILCARB => null()
555 pki%XP_LIGNIN_STRUC => null()
556 pki%XP_TURNOVER => null()
557 !
558 pki%XP_FSAT=> null()
559 pki%XP_TOPQS=> null()
560 !
561 pki%XP_MUF=> null()
562 !
563 pki%XP_WRL => null()
564 pki%XP_WRLI => null()
565 pki%XP_WRVN => null()
566 pki%XP_TV => null()
567 pki%XP_TL => null()
568 pki%XP_TC => null()
569 pki%XP_QC => null()
570 
571 pki%XP_H_VEG => null()
572 pki%XP_RGLV => null()
573 pki%XP_GAMMAV => null()
574 pki%XP_WRMAX_CFV => null()
575 pki%XP_LAIV => null()
576 pki%XP_Z0V => null()
577 pki%XP_RSMINV => null()
578 pki%XP_ROOTFRACV => null()
579 pki%XP_GNDLITTER => null()
580 pki%XP_Z0LITTER => null()
581 !
582 !
583 DEALLOCATE(pki%LBLOCK_SIMPLE)
584 DEALLOCATE(pki%LBLOCK_0)
585 DEALLOCATE(pki%NBLOCK_SIMPLE)
586 DEALLOCATE(pki%NBLOCK_0)
587 DEALLOCATE(pki%TBLOCK_SIMPLE)
588 DEALLOCATE(pki%TBLOCK_0)
589 DEALLOCATE(pki%XBLOCK_SIMPLE)
590 DEALLOCATE(pki%XBLOCK_GROUND)
591 DEALLOCATE(pki%XBLOCK_VEGTYPE)
592 DEALLOCATE(pki%XBLOCK_TG)
593 DEALLOCATE(pki%XBLOCK_SNOW)
594 DEALLOCATE(pki%XBLOCK_ALB)
595 DEALLOCATE(pki%XBLOCK_2)
596 DEALLOCATE(pki%XBLOCK_BIOMASS)
597 DEALLOCATE(pki%XBLOCK_SOILCARB)
598 DEALLOCATE(pki%XBLOCK_LITTLEVS)
599 DEALLOCATE(pki%XBLOCK_LITTER)
600 DEALLOCATE(pki%XBLOCK_0)
601 DEALLOCATE(pki%XBLOCK_00)
602 DEALLOCATE(pki%XBLOCK_000)
603 DEALLOCATE(pki%XBLOCK_01)
604 !
605 IF (lhook) CALL dr_hook('UNPACK_ISBA_PATCH_N',1,zhook_handle)
606 !------------------------------------------------------------------
607 !
608 END SUBROUTINE unpack_isba_patch_n
subroutine unpack_isba_patch_n(AG, I, PKI, KMASK, KSIZE, KPATCH)