SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
convert_patch_garden.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 convert_patch_garden (DTCO, DTI, I, TGDO, TGDPE, TGDP, TOP, TVG, &
7  klu,kdecade)
8 !#############################################################
9 !
10 !!**** *CONVERT_PATCH_GARDEN* - routine to initialize GARDEN parameters
11 !!
12 !! PURPOSE
13 !! -------
14 !!
15 !!** METHOD
16 !! ------
17 !!
18 !! EXTERNAL
19 !! --------
20 !!
21 !!
22 !! IMPLICIT ARGUMENTS
23 !! ------------------
24 !!
25 !! REFERENCE
26 !! ---------
27 !!
28 !!
29 !! AUTHOR
30 !! ------
31 !! A. Lemonsu *Meteo France*
32 !!
33 !! MODIFICATIONS
34 !! -------------
35 !! Original 09/2009
36 !-------------------------------------------------------------------------------
37 !
38 !* 0. DECLARATIONS
39 ! ------------
40 !
41 !
42 !
44 USE modd_data_isba_n, ONLY : data_isba_t
45 USE modd_isba_n, ONLY : isba_t
51 !
53 !
54 USE modi_convert_patch_isba
55 !
56 USE yomhook ,ONLY : lhook, dr_hook
57 USE parkind1 ,ONLY : jprb
58 !
59 IMPLICIT NONE
60 !
61 !* 0.1 Declarations of arguments
62 ! -------------------------
63 !
64 !
65 TYPE(data_cover_t), INTENT(INOUT) :: dtco
66 TYPE(data_isba_t), INTENT(INOUT) :: dti
67 TYPE(isba_t), INTENT(INOUT) :: i
68 TYPE(teb_garden_options_t), INTENT(INOUT) :: tgdo
69 TYPE(teb_garden_pgd_evol_t), INTENT(INOUT) :: tgdpe
70 TYPE(teb_garden_pgd_t), INTENT(INOUT) :: tgdp
71 TYPE(teb_options_t), INTENT(INOUT) :: top
72 TYPE(teb_veg_options_t), INTENT(INOUT) :: tvg
73 !
74 INTEGER, INTENT(IN) :: klu ! number of points
75 INTEGER, INTENT(IN) :: kdecade ! number of decades
76 !
77 !
78 !
79 !* 0.2 Declarations of local variables
80 ! -------------------------------
81 !
82 REAL, DIMENSION(KLU,1) :: zlai
83 REAL, DIMENSION(KLU,1) :: zveg
84 REAL, DIMENSION(KLU,1) :: zz0
85 REAL, DIMENSION(KLU,1) :: zemis
86 REAL, DIMENSION(KLU,1) :: zrsmin
87 REAL, DIMENSION(KLU,1) :: zgamma
88 REAL, DIMENSION(KLU,1) :: zwrmax_cf
89 REAL, DIMENSION(KLU,1) :: zrgl
90 REAL, DIMENSION(KLU,1) :: zcv
91 REAL, DIMENSION(KLU,1) :: zgmes
92 REAL, DIMENSION(KLU,1) :: zbslai
93 REAL, DIMENSION(KLU,1) :: zlaimin
94 REAL, DIMENSION(KLU,1) :: zsefold
95 REAL, DIMENSION(KLU,1) :: zgc
96 REAL, DIMENSION(KLU,1) :: zdmax
97 REAL, DIMENSION(KLU,1) :: zf2i
98 REAL, DIMENSION(KLU,1) :: zalbnir_veg
99 REAL, DIMENSION(KLU,1) :: zalbvis_veg
100 REAL, DIMENSION(KLU,1) :: zalbuv_veg
101 REAL, DIMENSION(KLU,1) :: zce_nitro
102 REAL, DIMENSION(KLU,1) :: zcf_nitro
103 REAL, DIMENSION(KLU,1) :: zcna_nitro
104 REAL, DIMENSION(KLU,1) :: zre25
105 REAL, DIMENSION(KLU,1) :: zh_tree
106 REAL, DIMENSION(KLU,1) :: zz0_o_z0h
107 REAL, DIMENSION(KLU,1) :: zd_ice
108 REAL, DIMENSION(KLU,TGDO%NGROUND_LAYER,1) :: zrootfrac
109 REAL, DIMENSION(KLU,TGDO%NGROUND_LAYER,1) :: zdg
110 REAL, DIMENSION(KLU,1) :: zdroot
111 REAL, DIMENSION(KLU,1) :: zdg2
112 INTEGER, DIMENSION(KLU,1) :: iwg_layer
113 LOGICAL, DIMENSION(KLU,1) :: gstress
114 !
115 REAL(KIND=JPRB) :: zhook_handle
116 !
117 !-------------------------------------------------------------------------------
118 !
119 ! Initialisation for IO
120 !
121 IF (lhook) CALL dr_hook('CONVERT_PATCH_GARDEN',0,zhook_handle)
122 !
123 !-------------------------------------------------------------------------------
124 !
125 !
126  CALL convert_patch_isba(dtco, dti, i, &
127  tvg%CISBA,kdecade,kdecade,top%XCOVER,top%LCOVER,tvg%CPHOTO,.false., &
128  .false.,tvg%LTR_ML,'GRD',pveg=zveg,plai=zlai, &
129  prsmin=zrsmin,pgamma=zgamma,pwrmax_cf=zwrmax_cf, &
130  prgl=zrgl,pcv=zcv,psoilgrid=tgdo%XSOILGRID, &
131  pdg=zdg,kwg_layer=iwg_layer,pdroot=zdroot,pdg2=zdg2, &
132  pz0=zz0,pz0_o_z0h=zz0_o_z0h, &
133  palbnir_veg=zalbnir_veg,palbvis_veg=zalbvis_veg, &
134  palbuv_veg=zalbuv_veg,pemis_eco=zemis, &
135  pvegtype=tgdp%XVEGTYPE,prootfrac=zrootfrac, &
136  pgmes=zgmes,pbslai=zbslai,plaimin=zlaimin, &
137  psefold=zsefold,pgc=zgc, &
138  pdmax=zdmax,pf2i=zf2i,ostress=gstress,ph_tree=zh_tree, &
139  pre25=zre25,pce_nitro=zce_nitro,pcf_nitro=zcf_nitro, &
140  pcna_nitro=zcna_nitro,pd_ice=zd_ice )
141 !
142 tgdpe%CUR%XVEG = zveg(:,1)
143 tgdpe%CUR%XLAI = zlai(:,1)
144 tgdpe%CUR%XZ0 = zz0(:,1)
145 tgdpe%CUR%XEMIS = zemis(:,1)
146 tgdp%XRSMIN = zrsmin(:,1)
147 tgdp%XGAMMA = zgamma(:,1)
148 tgdp%XWRMAX_CF = zwrmax_cf(:,1)
149 tgdp%XRGL = zrgl(:,1)
150 tgdp%XCV = zcv(:,1)
151 tgdp%XGMES = zgmes(:,1)
152 tgdp%XBSLAI = zbslai(:,1)
153 tgdp%XLAIMIN = zlaimin(:,1)
154 tgdp%XSEFOLD = zsefold(:,1)
155 tgdp%XGC = zgc(:,1)
156 tgdp%XDMAX = zdmax(:,1)
157 tgdp%XF2I = zf2i(:,1)
158 tgdp%LSTRESS = gstress(:,1)
159 tgdp%XALBNIR_VEG = zalbnir_veg(:,1)
160 tgdp%XALBVIS_VEG = zalbvis_veg(:,1)
161 tgdp%XALBUV_VEG = zalbuv_veg(:,1)
162 tgdp%XCE_NITRO = zce_nitro(:,1)
163 tgdp%XCF_NITRO = zcf_nitro(:,1)
164 tgdp%XCNA_NITRO = zcna_nitro(:,1)
165 tgdp%XH_TREE = zh_tree(:,1)
166 tgdp%XRE25 = zre25(:,1)
167 tgdp%XROOTFRAC = zrootfrac(:,:,1)
168 tgdp%XDG = zdg(:,:,1)
169 tgdp%XDROOT = zdroot(:,1)
170 tgdp%XDG2 = zdg2(:,1)
171 tgdp%NWG_LAYER = iwg_layer(:,1)
172 tgdp%XZ0_O_Z0H = zz0_o_z0h(:,1)
173 tgdp%XD_ICE = zd_ice(:,1)
174 !
175 !-------------------------------------------------------------------------------
176 !
177 IF (lhook) CALL dr_hook('CONVERT_PATCH_GARDEN',1,zhook_handle)
178 !
179 !-------------------------------------------------------------------------------
180 !
181 !
182 END SUBROUTINE convert_patch_garden
subroutine convert_patch_garden(DTCO, DTI, I, TGDO, TGDPE, TGDP, TOP, TVG, KLU, KDECADE)
subroutine convert_patch_isba(DTCO, DTI, I, HISBA, KDECADE, KDECADE2, PCOVER, OCOVER, HPHOTO, OAGRIP, OPERM, OTR_ML, HSFTYPE, PVEG, PLAI, PRSMIN, PGAMMA, PWRMAX_CF, PRGL, PCV, PSOILGRID, PDG, KWG_LAYER, PDROOT, PDG2, PZ0, PZ0_O_Z0H, PALBNIR_VEG, PALBVIS_VEG, PALBUV_VEG, PEMIS_ECO, PVEGTYPE, PROOTFRAC, PGMES, PBSLAI, PLAIMIN, PSEFOLD, PGC, PDMAX, PF2I, OSTRESS, PH_TREE, PRE25, PCE_NITRO, PCF_NITRO, PCNA_NITRO, PD_ICE, PWG1, PALBNIR_SOIL, PALBVIS_SOIL, PALBUV_SOIL, TPSEED, TPREAP, PWATSUP, PIRRIG, PGNDLITTER, PRGLGV, PGAMMAGV, PRSMINGV, PROOTFRACGV, PWRMAX_CFGV, PLAIGV, PZ0LITTER, PH_VEG)