SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
convert_patch_teb_greenroof.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_teb_greenroof (DTCO, DTI, I, TGRO, TGRPE, TGRP, TOP, TVG, &
7  klu,kdecade)
8 !#############################################################
9 !
10 !!**** *CONVERT_PATCH_TEB_GREENROOF* - routine to initialize TEB_GREENROOF 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_greenroof_options_t), INTENT(INOUT) :: tgro
69 TYPE(teb_greenroof_pgd_evol_t), INTENT(INOUT) :: tgrpe
70 TYPE(teb_greenroof_pgd_t), INTENT(INOUT) :: tgrp
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) :: zalbnir
86 REAL, DIMENSION(KLU,1) :: zalbvis
87 REAL, DIMENSION(KLU,1) :: zalbuv
88 REAL, DIMENSION(KLU,1) :: zemis
89 REAL, DIMENSION(KLU,1) :: zrsmin
90 REAL, DIMENSION(KLU,1) :: zgamma
91 REAL, DIMENSION(KLU,1) :: zwrmax_cf
92 REAL, DIMENSION(KLU,1) :: zrgl
93 REAL, DIMENSION(KLU,1) :: zcv
94 REAL, DIMENSION(KLU,1) :: zgmes
95 REAL, DIMENSION(KLU,1) :: zbslai
96 REAL, DIMENSION(KLU,1) :: zlaimin
97 REAL, DIMENSION(KLU,1) :: zsefold
98 REAL, DIMENSION(KLU,1) :: zgc
99 REAL, DIMENSION(KLU,1) :: zdmax
100 REAL, DIMENSION(KLU,1) :: zf2i
101 REAL, DIMENSION(KLU,1) :: zalbnir_veg
102 REAL, DIMENSION(KLU,1) :: zalbvis_veg
103 REAL, DIMENSION(KLU,1) :: zalbuv_veg
104 REAL, DIMENSION(KLU,1) :: zalbnir_soil
105 REAL, DIMENSION(KLU,1) :: zalbvis_soil
106 REAL, DIMENSION(KLU,1) :: zalbuv_soil
107 REAL, DIMENSION(KLU,1) :: zce_nitro
108 REAL, DIMENSION(KLU,1) :: zcf_nitro
109 REAL, DIMENSION(KLU,1) :: zcna_nitro
110 REAL, DIMENSION(KLU,1) :: zre25
111 REAL, DIMENSION(KLU,1) :: zh_tree
112 REAL, DIMENSION(KLU,TGRO%NLAYER_GR,1) :: zrootfrac
113 REAL, DIMENSION(KLU,TGRO%NLAYER_GR,1) :: zdg
114 REAL, DIMENSION(KLU,1) :: zdroot
115 REAL, DIMENSION(KLU,1) :: zdg2
116 INTEGER, DIMENSION(KLU,1) :: iwg_layer
117 REAL, DIMENSION(KLU,1) :: zz0_o_z0h
118 REAL, DIMENSION(KLU,1) :: zd_ice
119 LOGICAL, DIMENSION(KLU,1) :: gstress
120 
121 !
122 REAL(KIND=JPRB) :: zhook_handle
123 !
124 !-------------------------------------------------------------------------------
125 !
126 ! Initialisation for IO
127 !
128 IF (lhook) CALL dr_hook('CONVERT_PATCH_TEB_GREENROOF',0,zhook_handle)
129 !
130 !-------------------------------------------------------------------------------
131 !
132 !
133  CALL convert_patch_isba(dtco, dti, i, &
134  tvg%CISBA,kdecade,kdecade,top%XCOVER,top%LCOVER,tvg%CPHOTO,.false., &
135  .false.,tvg%LTR_ML,'GRD',pveg=zveg,plai=zlai, &
136  prsmin=zrsmin,pgamma=zgamma,pwrmax_cf=zwrmax_cf, &
137  prgl=zrgl,pcv=zcv,psoilgrid=tgro%XSOILGRID_GR, &
138  pdg=zdg,kwg_layer=iwg_layer,pdroot=zdroot,pdg2=zdg2, &
139  pz0=zz0,pz0_o_z0h=zz0_o_z0h, &
140  palbnir_veg=zalbnir_veg,palbvis_veg=zalbvis_veg, &
141  palbuv_veg=zalbuv_veg,pemis_eco=zemis, &
142  pvegtype=tgrp%XVEGTYPE,prootfrac=zrootfrac, &
143  pgmes=zgmes,pbslai=zbslai,plaimin=zlaimin, &
144  psefold=zsefold,pgc=zgc, &
145  pdmax=zdmax,pf2i=zf2i,ostress=gstress,ph_tree=zh_tree, &
146  pre25=zre25,pce_nitro=zce_nitro,pcf_nitro=zcf_nitro, &
147  pcna_nitro=zcna_nitro,pd_ice=zd_ice )
148 !
149 tgrpe%CUR%XVEG = zveg(:,1)
150 tgrpe%CUR%XLAI = zlai(:,1)
151 tgrpe%CUR%XZ0 = zz0(:,1)
152 tgrpe%CUR%XALBNIR = zalbnir(:,1)
153 tgrpe%CUR%XALBVIS = zalbvis(:,1)
154 tgrpe%CUR%XALBUV = zalbuv(:,1)
155 tgrpe%CUR%XEMIS = zemis(:,1)
156 tgrp%XRSMIN = zrsmin(:,1)
157 tgrp%XGAMMA = zgamma(:,1)
158 tgrp%XWRMAX_CF = zwrmax_cf(:,1)
159 tgrp%XRGL = zrgl(:,1)
160 tgrp%XCV = zcv(:,1)
161 tgrp%XGMES = zgmes(:,1)
162 tgrp%XBSLAI = zbslai(:,1)
163 tgrp%XLAIMIN = zlaimin(:,1)
164 tgrp%XSEFOLD = zsefold(:,1)
165 tgrp%XGC = zgc(:,1)
166 tgrp%XDMAX = zdmax(:,1)
167 tgrp%XF2I = zf2i(:,1)
168 tgrp%LSTRESS = gstress(:,1)
169 tgrp%XALBNIR_VEG = zalbnir_veg(:,1)
170 tgrp%XALBVIS_VEG = zalbvis_veg(:,1)
171 tgrp%XALBUV_VEG = zalbuv_veg(:,1)
172 tgrp%XALBNIR_SOIL = zalbnir_soil(:,1)
173 tgrp%XALBVIS_SOIL = zalbvis_soil(:,1)
174 tgrp%XALBUV_SOIL = zalbuv_soil(:,1)
175 tgrp%XCE_NITRO = zce_nitro(:,1)
176 tgrp%XCF_NITRO = zcf_nitro(:,1)
177 tgrp%XCNA_NITRO = zcna_nitro(:,1)
178 tgrp%XH_TREE = zh_tree(:,1)
179 tgrp%XRE25 = zre25(:,1)
180 tgrp%XROOTFRAC = zrootfrac(:,:,1)
181 tgrp%XDG = zdg(:,:,1)
182 tgrp%XZ0_O_Z0H = zz0_o_z0h(:,1)
183 tgrp%XD_ICE = zd_ice(:,1)
184 !
185 !-------------------------------------------------------------------------------
186 !
187 IF (lhook) CALL dr_hook('CONVERT_PATCH_TEB_GREENROOF',1,zhook_handle)
188 !
189 !-------------------------------------------------------------------------------
190 !
191 !
192 END SUBROUTINE convert_patch_teb_greenroof
subroutine convert_patch_teb_greenroof(DTCO, DTI, I, TGRO, TGRPE, TGRP, 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)