SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
init_teb_greenroof_pgdn.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_teb_greenroof_pgd_n (DTCO, U, CHI, DTI, I, DST, SLT, CHT, TG, T, TOP, TVG, GRM, &
7  hprogram,hinit,oread_pgd, ki, ksv, hsv, kversion, pco2, prhoa)
8 !#############################################################
9 !
10 !!**** *INIT_TEB_GREENROOF_PGD_n* - routine to initialize ISBA
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 !! 11/2013 (B. Decharme) No exp profile with DIF
37 !-------------------------------------------------------------------------------
38 !
39 !* 0. DECLARATIONS
40 ! ------------
41 !
42 !
44 USE modd_surf_atm_n, ONLY : surf_atm_t
45 USE modd_ch_isba_n, ONLY : ch_isba_t
46 USE modd_data_isba_n, ONLY : data_isba_t
47 USE modd_isba_n, ONLY : isba_t
48 USE modd_dst_n, ONLY : dst_t
49 USE modd_slt_n, ONLY : slt_t
50 USE modd_ch_teb_n, ONLY : ch_teb_t
51 USE modd_teb_grid_n, ONLY : teb_grid_t
52 USE modd_teb_n, ONLY : teb_t
56 !
59 !
60 
61 
62 USE modd_data_cover_par, ONLY: nvegtype
63 USE modd_surf_par, ONLY: xundef, nundef
64 
65 USE modd_sgh_par, ONLY: ndimtab, xf_decay
66 !
67 USE modi_get_luout
68 USE modi_allocate_teb_greenroof_pgd
69 USE modi_read_pgd_teb_greenroof_n
70 USE modi_convert_patch_teb_greenroof
71 USE modi_init_from_data_greenroof_n
72 USE modi_init_veg_pgd_garden_n
73 USE modi_exp_decay_soil_fr
74 USE modi_abor1_sfx
75 !
76 USE yomhook ,ONLY : lhook, dr_hook
77 USE parkind1 ,ONLY : jprb
78 !
79 IMPLICIT NONE
80 !
81 !* 0.1 Declarations of arguments
82 ! -------------------------
83 !
84 !
85 TYPE(data_cover_t), INTENT(INOUT) :: dtco
86 TYPE(surf_atm_t), INTENT(INOUT) :: u
87 TYPE(ch_isba_t), INTENT(INOUT) :: chi
88 TYPE(data_isba_t), INTENT(INOUT) :: dti
89 TYPE(isba_t), INTENT(INOUT) :: i
90 TYPE(dst_t), INTENT(INOUT) :: dst
91 TYPE(slt_t), INTENT(INOUT) :: slt
92 TYPE(ch_teb_t), INTENT(INOUT) :: cht
93 TYPE(teb_grid_t), INTENT(INOUT) :: tg
94 TYPE(teb_t), INTENT(INOUT) :: t
95 TYPE(teb_options_t), INTENT(INOUT) :: top
96 TYPE(teb_veg_options_t), INTENT(INOUT) :: tvg
97 TYPE(teb_greenroof_model_t), INTENT(INOUT) :: grm
98 !
99  CHARACTER(LEN=6), INTENT(IN) :: hprogram ! program calling surf. schemes
100  CHARACTER(LEN=3), INTENT(IN) :: hinit ! choice of fields to initialize
101 LOGICAL, INTENT(IN) :: oread_pgd ! flag to read PGD fields in the file
102 INTEGER, INTENT(IN) :: ki ! number of points
103 INTEGER, INTENT(IN) :: ksv ! number of scalars
104  CHARACTER(LEN=6), DIMENSION(KSV), INTENT(IN) :: hsv ! name of all scalar variables
105 INTEGER, INTENT(IN) :: kversion ! version number of the file being read
106 REAL, DIMENSION(KI), INTENT(IN) :: pco2 ! CO2 concentration (kg/m3)
107 REAL, DIMENSION(KI), INTENT(IN) :: prhoa ! air density
108 !
109 !
110 !
111 !* 0.2 Declarations of local variables
112 ! -------------------------------
113 !
114 INTEGER :: jilu ! loop increment
115 INTEGER :: iluout ! unit of output listing file
116 !
117 INTEGER :: idecade ! decade of simulation
118 !
119 INTEGER :: jvegtype, jlayer ! loop counter on layers
120 !
121 REAL, DIMENSION(KI) :: zf
122 REAL, DIMENSION(KI) :: zwork
123 !
124 !* 0.3 Soil parameter values for organic matter - from Lawrence and Slater (2008):
125 ! ----------------------------------------------------------------------------------
126 !
127 REAL, PARAMETER :: zwsat_om = 0.9 ! Porosity of OM (m3/m3)
128 REAL, PARAMETER :: zcondsat_om = 2.8e-4 ! Saturated hydraulic conductivity for OM (m/s)
129 REAL, PARAMETER :: zmpotsat_om = -10.3e-3 ! Saturated matric potential for OM (m)
130 REAL, PARAMETER :: zbcoef_om = 2.7 ! CH78 b-parameter for OM (-)
131 !
132 REAL, PARAMETER :: zconddry_om = 0.05 ! Dry thermal conductivity for OM (W/m/K)
133 REAL, PARAMETER :: zcondsld_om = 0.25 ! Soil solids thermal conductivity for OM (W/m/K)
134 REAL, PARAMETER :: zhcapsoil_om = 2.5e+6 ! Soil heat capacity for OM
135 !
136 REAL, PARAMETER :: zmpot_wwilt = -150. ! Matric potential at wilting point (m)
137 REAL, PARAMETER :: zhydcond_wfc = 1.157e-9 ! Hydraulic conductivity at field capacity (m/s)
138 ! ! = 0.1 mm/day
139 !
140 REAL(KIND=JPRB) :: zhook_handle
141 !
142 !-------------------------------------------------------------------------------
143 !
144 ! Initialisation for IO
145 !
146 IF (lhook) CALL dr_hook('INIT_TEB_GREENROOF_PGD_n',0,zhook_handle)
147  CALL get_luout(hprogram,iluout)
148 !
149 !-------------------------------------------------------------------------------
150 !
151 !* 2. Physiographic fields
152 ! --------------------
153 !
154 !
155 !* 2.1 Cover, soil and orographic fields:
156 ! ---------------------------------
157 !
158 IF (oread_pgd) &
159  CALL read_pgd_teb_greenroof_n(cht, dtco, grm%DTGR, grm%GBGR, u, grm%TGRO, grm%TGRP, tg, &
160  hprogram,kversion)
161 !
162 !
163 !* allocation of green roofs variables
164 !
165  CALL allocate_teb_greenroof_pgd(grm%TGRPE, grm%TGRP, &
166  oread_pgd, ki, nvegtype, grm%TGRO%NLAYER_GR, ndimtab)
167 !
168 !* 2.2 Physiographic data fields from land cover:
169 ! -----------------------------------------
170 !
171 IF (top%TTIME%TDATE%MONTH /= nundef) THEN
172  idecade = 3 * ( top%TTIME%TDATE%MONTH - 1 ) + min(top%TTIME%TDATE%DAY-1,29) / 10 + 1
173 ELSE
174  idecade = 1
175 END IF
176 !
177 !
178 IF (.NOT. grm%TGRO%LPAR_GREENROOF) THEN
179  CALL convert_patch_teb_greenroof(dtco, dti, i, grm%TGRO, grm%TGRPE, grm%TGRP, top, tvg, &
180  ki,idecade)
181 ELSE
182  CALL init_from_data_greenroof_n(grm%DTGR, grm%TGRO, idecade,tvg%CPHOTO, &
183  grm%TGRP%XOM_GR, grm%TGRP%XSAND_GR, grm%TGRP%XCLAY_GR, &
184  grm%TGRPE%CUR%XVEG, grm%TGRPE%CUR%XLAI,grm%TGRP%XRSMIN, &
185  grm%TGRP%XGAMMA,grm%TGRP%XWRMAX_CF,grm%TGRP%XRGL,grm%TGRP%XCV,&
186  grm%TGRP%XDG,grm%TGRP%XD_ICE,grm%TGRPE%CUR%XZ0,grm%TGRP%XZ0_O_Z0H, &
187  grm%TGRP%XALBNIR_VEG,grm%TGRP%XALBVIS_VEG,grm%TGRP%XALBUV_VEG,&
188  grm%TGRPE%CUR%XEMIS,grm%TGRP%XVEGTYPE,grm%TGRP%XROOTFRAC, &
189  grm%TGRP%XGMES,grm%TGRP%XBSLAI,grm%TGRP%XLAIMIN,grm%TGRP%XSEFOLD,grm%TGRP%XGC, &
190  grm%TGRP%XDMAX, grm%TGRP%XF2I, grm%TGRP%LSTRESS, grm%TGRP%XH_TREE,grm%TGRP%XRE25,&
191  grm%TGRP%XCE_NITRO,grm%TGRP%XCF_NITRO,grm%TGRP%XCNA_NITRO )
192  IF (grm%TGRO%CISBA_GR=='DIF') THEN
193  WHERE(t%CUR%XGREENROOF(:)/=0.)
194  grm%TGRP%NWG_LAYER(:)=grm%TGRO%NLAYER_GR
195  grm%TGRP%XDG2 (:)=0.0
196  grm%TGRP%XDROOT(:)=0.0
197  ENDWHERE
198  DO jlayer=grm%TGRO%NLAYER_GR,1,-1
199  DO jilu=1,ki
200  IF(t%CUR%XGREENROOF(jilu)/=0..AND.grm%TGRP%XROOTFRAC(jilu,jlayer)>=1.0)THEN
201  grm%TGRP%XDG2 (jilu)=grm%TGRP%XDG(jilu,jlayer)
202  grm%TGRP%XDROOT(jilu)=grm%TGRP%XDG(jilu,jlayer)
203  ENDIF
204  ENDDO
205  ENDDO
206  ENDIF
207 END IF
208 !
209 WHERE (t%CUR%XGREENROOF(:)==0.)
210  ! GARDEN default values /may need changing for green roofs
211  grm%TGRP%XOM_GR (:,1) = 0.5
212  grm%TGRP%XOM_GR (:,2) = 0.5
213  grm%TGRP%XSAND_GR (:,1) = 0.33
214  grm%TGRP%XSAND_GR (:,2) = 0.33
215  grm%TGRP%XCLAY_GR (:,1) = 0.33
216  grm%TGRP%XCLAY_GR (:,2) = 0.33
217  grm%TGRPE%CUR%XVEG (: ) = 0.
218  grm%TGRPE%CUR%XLAI (: ) = 0.
219  grm%TGRP%XRSMIN (: ) = 40.
220  grm%TGRP%XGAMMA (: ) = 0.
221  grm%TGRP%XWRMAX_CF (: ) = 0.2
222  grm%TGRP%XRGL (: ) = 100.
223  grm%TGRP%XCV (: ) = 2.e-5
224  grm%TGRPE%CUR%XZ0 (: ) = 0.013
225  grm%TGRP%XZ0_O_Z0H (: ) = 10.
226  grm%TGRP%XALBNIR_VEG(: ) = 0.30
227  grm%TGRP%XALBVIS_VEG(: ) = 0.30
228  grm%TGRP%XALBUV_VEG (: ) = 0.06
229  grm%TGRPE%CUR%XEMIS (: ) = 0.94
230 END WHERE
231 IF (tvg%CPHOTO/='NON') THEN
232  WHERE (t%CUR%XGREENROOF(:)==0.)
233  grm%TGRP%XGMES (: ) = 0.020
234  grm%TGRP%XBSLAI (: ) = 0.36
235  grm%TGRP%XLAIMIN (: ) = 0.3
236  grm%TGRP%XSEFOLD (: ) = 90*86400.
237  grm%TGRP%XH_TREE (: ) = 0.
238  grm%TGRP%XRE25 (: ) = 3.6e-7
239  grm%TGRP%XGC (: ) = 0.00025
240  END WHERE
241  IF (tvg%CPHOTO/='AGS' .AND. tvg%CPHOTO/='LAI') THEN
242  WHERE (t%CUR%XGREENROOF(:)==0.)
243  grm%TGRP%XDMAX (: ) = 0.1
244  grm%TGRP%XF2I (: ) = 0.3
245  END WHERE
246  IF (tvg%CPHOTO=='NIT' .OR. tvg%CPHOTO=='NCB') THEN
247  WHERE (t%CUR%XGREENROOF(:)==0.)
248  grm%TGRP%XCE_NITRO (: ) = 7.68
249  grm%TGRP%XCF_NITRO (: ) = -4.33
250  grm%TGRP%XCNA_NITRO (: ) = 1.3
251  END WHERE
252  ENDIF
253  ENDIF
254 ENDIF
255 IF(grm%TGRO%CISBA_GR/='DIF')THEN
256  DO jlayer=1,grm%TGRO%NLAYER_GR
257  WHERE (t%CUR%XGREENROOF(:)==0.)
258  grm%TGRP%XDG(:,jlayer)=0.2*jlayer
259  END WHERE
260  ENDDO
261 ELSE
262  WHERE (t%CUR%XGREENROOF(:)==0.)
263  grm%TGRP%XDG(:,1)=0.01
264  grm%TGRP%XDG(:,2)=0.04
265  grm%TGRP%XROOTFRAC(:,1)=0.
266  grm%TGRP%XROOTFRAC(:,2)=0.
267  END WHERE
268  DO jlayer=3,grm%TGRO%NLAYER_GR
269  WHERE (t%CUR%XGREENROOF(:)==0.)
270  grm%TGRP%XDG(:,jlayer)=0.1*(jlayer-2)
271  grm%TGRP%XROOTFRAC(:,jlayer)=0.
272  END WHERE
273  ENDDO
274  WHERE (t%CUR%XGREENROOF(:)==0.)
275  grm%TGRP%NWG_LAYER(:)=grm%TGRO%NLAYER_GR
276  grm%TGRP%XDROOT (:)=0.0
277  grm%TGRP%XDG2 (:)=grm%TGRP%XDG(:,grm%TGRO%NLAYER_GR-1)
278  ENDWHERE
279 ENDIF
280 WHERE (t%CUR%XGREENROOF(:)==0.)
281  grm%TGRP%XD_ICE(:)=0.8*grm%TGRP%XDG(:,2)
282 END WHERE
283 DO jvegtype=1,nvegtype
284  WHERE (t%CUR%XGREENROOF(:)==0.)
285  grm%TGRP%XVEGTYPE(:,jvegtype)=0.
286  grm%TGRP%XVEGTYPE(:,1)=1.
287  END WHERE
288 ENDDO
289 !
290  CALL init_veg_pgd_garden_n(chi, dtco, dst, i, slt, u, &
291  hprogram, iluout, ki, grm%TGRO%NLAYER_GR, top%TTIME%TDATE%MONTH, &
292  grm%TGRP%XVEGTYPE, grm%TGRP%XTDEEP, grm%TGRP%XGAMMAT, tvg%CPHOTO, hinit, &
293  grm%TGRO%LTR_ML_GR, grm%TGRO%CRUNOFF_GR, tvg%NNBIOMASS, pco2, prhoa, &
294  grm%TGRP%XABC, grm%TGRP%XPOI, grm%TGRP%XGMES, grm%TGRP%XGC, grm%TGRP%XDMAX, &
295  grm%TGRP%XANMAX, grm%TGRP%XFZERO, grm%TGRP%XEPSO, grm%TGRP%XGAMM, grm%TGRP%XQDGAMM, &
296  grm%TGRP%XQDGMES, grm%TGRP%XT1GMES, grm%TGRP%XT2GMES, grm%TGRP%XAMAX, grm%TGRP%XQDAMAX, &
297  grm%TGRP%XT1AMAX, grm%TGRP%XT2AMAX,grm%TGRP%XAH, grm%TGRP%XBH, &
298  ksv, hsv, cht%SVT, cht%CCH_NAMES, cht%CAER_NAMES,cht%CDSTNAMES, cht%CSLTNAMES, &
299  cht%CCHEM_SURF_FILE, grm%TGRP%XCLAY_GR, grm%TGRP%XSAND_GR, tvg%CPEDOTF, &
300  grm%TGRP%XCONDSAT, grm%TGRP%XMPOTSAT, grm%TGRP%XBCOEF, grm%TGRP%XWWILT, &
301  grm%TGRP%XWFC, grm%TGRP%XWSAT, grm%TGRP%XTAUICE, grm%TGRP%XCGSAT, grm%TGRP%XC1SAT, &
302  grm%TGRP%XC2REF, grm%TGRP%XC3, grm%TGRP%XC4B, grm%TGRP%XACOEF, grm%TGRP%XPCOEF, &
303  grm%TGRP%XC4REF, grm%TGRP%XPCPS, grm%TGRP%XPLVTT, grm%TGRP%XPLSTT, &
304  grm%TGRO%CSCOND_GR, grm%TGRO%CISBA_GR, grm%TGRP%XHCAPSOIL, grm%TGRP%XCONDDRY, &
305  grm%TGRP%XCONDSLD, tvg%CCPSURF, grm%TGRP%XDG, grm%TGRP%XDROOT, grm%TGRP%XDG2, &
306  grm%TGRP%XROOTFRAC, grm%TGRP%XRUNOFFD, grm%TGRP%XDZG, grm%TGRP%XDZDIF, &
307  grm%TGRP%XSOILWGHT, grm%TGRP%NWG_LAYER, grm%TGRO%NLAYER_HORT_GR, &
308  grm%TGRO%NLAYER_DUN_GR, grm%TGRP%XD_ICE, &
309  grm%TGRP%XKSAT_ICE, grm%TGRP%XALBNIR_DRY, grm%TGRP%XALBVIS_DRY, grm%TGRP%XALBUV_DRY, &
310  grm%TGRP%XALBNIR_WET, grm%TGRP%XALBVIS_WET, grm%TGRP%XALBUV_WET, grm%TGRP%XBSLAI_NITRO, &
311  grm%TGRP%XCE_NITRO, grm%TGRP%XCNA_NITRO, grm%TGRP%XCF_NITRO )
312 !
313 !-------------------------------------------------------------------------------
314 !
315 !* 5.1 Soil thermal characteristics for greenroofs:
316 ! ----------------------------------------------
317 !
318 ! WARNING: must be done before soil hydraulic characteristics (because of WSAT)
319 ! Estimation of WSAT_MI for use in HEATCAPZ and THRMCONDZ for mineral fraction
320 ! and allow weighted combination with regard to OM & no-OM fractions:
321 !
322 IF (grm%TGRO%CSCOND_GR=='PL98' .OR. grm%TGRO%CISBA_GR=='DIF') THEN
323  DO jlayer=1,grm%TGRO%NLAYER_GR
324  grm%TGRP%XHCAPSOIL(:,jlayer) = grm%TGRP%XOM_GR(:,jlayer) * zhcapsoil_om + &
325  (1-grm%TGRP%XOM_GR(:,jlayer)) * grm%TGRP%XHCAPSOIL(:,jlayer)
326  grm%TGRP%XCONDDRY(:,jlayer) = (zconddry_om * grm%TGRP%XCONDDRY(:,jlayer)) &
327  /( grm%TGRP%XOM_GR(:,jlayer) * grm%TGRP%XCONDDRY(:,jlayer) + &
328  (1-grm%TGRP%XOM_GR(:,jlayer)) * zconddry_om)
329  grm%TGRP%XCONDSLD(:,jlayer) = (zcondsld_om * grm%TGRP%XCONDSLD(:,jlayer)) &
330  /( grm%TGRP%XOM_GR(:,jlayer) * grm%TGRP%XCONDSLD(:,jlayer) + &
331  (1-grm%TGRP%XOM_GR(:,jlayer)) * zcondsld_om)
332  ENDDO
333 END IF
334 !
335 ! +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
336 ! Validation case : experimental values for Nancy 2011 case
337 ! +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
338 ! Substrate layer
339 DO jlayer=1,4
340  grm%TGRP%XCONDDRY (:,jlayer) = 0.15
341  grm%TGRP%XHCAPSOIL(:,jlayer) = 1342000.
342 ENDDO
343 ! Drainage layer
344 DO jlayer=5,6
345  grm%TGRP%XCONDDRY (:,jlayer) = 0.09
346  grm%TGRP%XHCAPSOIL(:,jlayer) = 331500.
347 ENDDO
348 ! +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
349 !
350 !* 5.2 Soil thermal characteristics:
351 ! --------------------------------
352 !
353 DO jlayer=1,grm%TGRO%NLAYER_GR
354  grm%TGRP%XCONDSAT(:,jlayer) = grm%TGRP%XOM_GR(:,jlayer)* zcondsat_om &
355  +(1-grm%TGRP%XOM_GR(:,jlayer))* grm%TGRP%XCONDSAT(:,jlayer)
356 END DO
357 !
358 ! Note that if ISBA/=DIF, always CDIF = 'BC' and CPEDOTF = 'CH78'
359 DO jlayer=1,grm%TGRO%NLAYER_GR
360  grm%TGRP%XBCOEF (:,jlayer) = grm%TGRP%XOM_GR(:,jlayer) * zbcoef_om &
361  +(1-grm%TGRP%XOM_GR(:,jlayer))* grm%TGRP%XBCOEF(:,jlayer)
362  grm%TGRP%XMPOTSAT(:,jlayer) = grm%TGRP%XOM_GR(:,jlayer) * zmpotsat_om &
363  +(1-grm%TGRP%XOM_GR(:,jlayer))* grm%TGRP%XMPOTSAT(:,jlayer)
364 END DO
365 !
366 DO jlayer=1,grm%TGRO%NLAYER_GR
367  grm%TGRP%XWSAT (:,jlayer) = grm%TGRP%XOM_GR(:,jlayer)* zwsat_om &
368  +(1-grm%TGRP%XOM_GR(:,jlayer))* grm%TGRP%XWSAT(:,jlayer)
369  grm%TGRP%XWWILT(:,jlayer) = exp(((log(-1*zmpot_wwilt)-log(-1*grm%TGRP%XMPOTSAT(:,jlayer))) &
370  / (-1*grm%TGRP%XBCOEF(:,jlayer)))+log(grm%TGRP%XWSAT(:,jlayer)))
371  grm%TGRP%XWFC (:,jlayer) = exp(((log(zhydcond_wfc)-log(grm%TGRP%XCONDSAT(:,jlayer))) &
372  / (2*grm%TGRP%XBCOEF(:,jlayer)+3))+log(grm%TGRP%XWSAT(:,jlayer)))
373 END DO
374 !
375 ! +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
376 ! Validation case : experimental values for Nancy 2011 case
377 ! +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
378 ! Substrate layer
379 DO jlayer=1,4
380  grm%TGRP%XWSAT (:,jlayer) = 0.674 ! Value tested
381  grm%TGRP%XCONDSAT(:,jlayer) = 2.162e-3 ! Value tested
382  grm%TGRP%XMPOTSAT(:,jlayer) = -0.932 ! Value tested
383  grm%TGRP%XBCOEF (:,jlayer) = 3.9 ! Value tested
384  grm%TGRP%XWWILT (:,jlayer) = 0.15 ! from OBS-NANCY
385  grm%TGRP%XWFC (:,jlayer) = 0.37 ! from OBS-NANCY
386 ENDDO
387 ! Drainage layer
388 DO jlayer=5,6
389  grm%TGRP%XWSAT (:,jlayer) = 0.9 ! Value tested
390  grm%TGRP%XCONDSAT(:,jlayer) = 3.32e-3 ! Value tested
391  grm%TGRP%XMPOTSAT(:,jlayer) = -0.121 ! Value tested
392  grm%TGRP%XBCOEF (:,jlayer) = 2.7 ! Value tested
393  grm%TGRP%XWWILT (:,jlayer) = 0.15 ! sert à initialiser le WG ds la couche
394  grm%TGRP%XWFC (:,jlayer) = 0.37 ! sert à initialiser le WG ds la couche
395 ENDDO
396 !-------------------------------------------------------------------------------
397 !
398 !* 6.1 Initialize of the SGH scheme:'
399 ! ------------------------------
400 !
401 IF(grm%TGRO%CKSAT_GR=='SGH' .AND. grm%TGRO%CISBA_GR/='DIF' .AND. hinit/='PRE')THEN
402  zf(:)=min(4.0/grm%TGRP%XDG(:,2),xf_decay)
403  CALL exp_decay_soil_fr(grm%TGRO%CISBA_GR, zf(:),grm%TGRP%XC1SAT(:),grm%TGRP%XC2REF(:),&
404  grm%TGRP%XDG(:,:),grm%TGRP%XD_ICE(:),grm%TGRP%XC4REF(:),&
405  grm%TGRP%XC3(:,:),grm%TGRP%XCONDSAT(:,:),grm%TGRP%XKSAT_ICE(:))
406 ENDIF
407 !
408 !-------------------------------------------------------------------------------
409 !
410 IF (lhook) CALL dr_hook('INIT_TEB_GREENROOF_PGD_n',1,zhook_handle)
411 !
412 !-------------------------------------------------------------------------------
413 !
414 !
415 END SUBROUTINE init_teb_greenroof_pgd_n
subroutine allocate_teb_greenroof_pgd(TGRPE, TGRP, OALLOC, KLU, KVEGTYPE, KLAYER_GR, KDIMTAB)
subroutine convert_patch_teb_greenroof(DTCO, DTI, I, TGRO, TGRPE, TGRP, TOP, TVG, KLU, KDECADE)
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_from_data_greenroof_n(DTGR, TGRO, KDECADE, HPHOTO, POM_GR, PSAND_GR, PCLAY_GR, PVEG, PLAI, PRSMIN, PGAMMA, PWRMAX_CF, PRGL, PCV, PDG, PD_ICE, PZ0, PZ0_O_Z0H, PALBNIR_VEG, PALBVIS_VEG, PALBUV_VEG, PEMIS, PVEGTYPE, PROOTFRAC, PGMES, PBSLAI, PLAIMIN, PSEFOLD, PGC, PDMAX, PF2I, OSTRESS, PH_TREE, PRE25, PCE_NITRO, PCF_NITRO, PCNA_NITRO, PALBNIR_SOIL, PALBVIS_SOIL, PALBUV_SOIL)
subroutine get_luout(HPROGRAM, KLUOUT)
Definition: get_luout.F90:6
subroutine read_pgd_teb_greenroof_n(CHT, DTCO, DTGR, GBGR, U, TGRO, TGRP, TG, HPROGRAM, KVERSION)
subroutine init_teb_greenroof_pgd_n(DTCO, U, CHI, DTI, I, DST, SLT, CHT, TG, T, TOP, TVG, GRM, HPROGRAM, HINIT, OREAD_PGD, KI, KSV, HSV, KVERSION, PCO2, PRHOA)
subroutine exp_decay_soil_fr(HISBA, PF, PC1SAT, PC2REF, PD_G, PD_ICE, PC4REF, PC3, PCONDSAT, PKSAT_ICE)