8 pom_gr, psand_gr, pclay_gr, pveg, &
9 plai,prsmin,pgamma,pwrmax_cf, &
10 prgl,pcv,pdg,pd_ice,pz0,pz0_o_z0h, &
11 palbnir_veg,palbvis_veg,palbuv_veg, &
14 pgmes,pbslai,plaimin,psefold,pgc, &
15 pdmax, pf2i, ostress, &
17 pce_nitro, pcf_nitro, pcna_nitro, &
18 palbnir_soil,palbvis_soil,palbuv_soil )
61 USE yomhook
,ONLY : lhook, dr_hook
62 USE parkind1
,ONLY : jprb
73 INTEGER,
INTENT(IN) :: kdecade
74 CHARACTER(LEN=*),
INTENT(IN) :: hphoto
76 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: psand_gr
77 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: pclay_gr
78 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: pom_gr
79 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pveg
80 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: plai
81 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: prsmin
82 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pgamma
83 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pwrmax_cf
84 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: prgl
85 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pcv
86 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: pdg
87 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pd_ice
88 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: prootfrac
89 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pz0
90 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pz0_o_z0h
91 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: palbnir_veg
92 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: palbvis_veg
93 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: palbuv_veg
94 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pemis
96 REAL,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: pvegtype
98 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pgmes
99 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pre25
100 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pbslai
101 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: plaimin
102 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: psefold
103 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pgc
104 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pdmax
105 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pf2i
106 LOGICAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: ostress
108 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: ph_tree
110 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pce_nitro
111 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pcf_nitro
112 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: pcna_nitro
113 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: palbnir_soil
114 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: palbvis_soil
115 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(OUT) :: palbuv_soil
122 REAL(KIND=JPRB) :: zhook_handle
130 IF (lhook) CALL dr_hook(
'INIT_FROM_DATA_GREENROOF_N',0,zhook_handle)
131 IF (tgro%NTIME_GR==12)
THEN
132 itime = (kdecade+2)/3
143 IF (present(pom_gr)) pom_gr(:,:) = dtgr%XPAR_OM_GR(:,:)
145 IF (present(psand_gr)) psand_gr(:,:) = dtgr%XPAR_SAND_GR(:,:)
147 IF (present(pclay_gr)) pclay_gr(:,:) = dtgr%XPAR_CLAY_GR(:,:)
153 IF (present(pvegtype)) pvegtype = dtgr%XPAR_VEGTYPE
158 IF (present(pveg)) pveg(:) = dtgr%XPAR_VEG (:,itime)
163 IF (present(plai)) plai(:) = dtgr%XPAR_LAI (:,itime)
168 IF (present(pz0)) pz0(:) = dtgr%XPAR_Z0 (:,itime)
170 IF (present(pz0_o_z0h)) pz0_o_z0h = dtgr%XPAR_Z0_O_Z0H
176 IF (present(pemis)) pemis(:) = dtgr%XPAR_EMIS (:,itime)
182 IF (present(prsmin))
THEN
183 IF (
SIZE(prsmin)>0) prsmin = dtgr%XPAR_RSMIN
188 IF (present(pgamma)) pgamma = dtgr%XPAR_GAMMA
189 IF (present(pwrmax_cf)) pwrmax_cf = dtgr%XPAR_WRMAX_CF
192 IF (present(prgl)) prgl = dtgr%XPAR_RGL
193 IF (present(pcv)) pcv = dtgr%XPAR_CV
200 IF (present(pdg)) pdg = dtgr%XPAR_DG
204 IF (present(prootfrac)) prootfrac = dtgr%XPAR_ROOTFRAC
208 IF (present(pd_ice)) pd_ice = dtgr%XPAR_DICE
211 IF (present(palbnir_veg)) palbnir_veg = dtgr%XPAR_ALBNIR_VEG
212 IF (present(palbvis_veg)) palbvis_veg = dtgr%XPAR_ALBVIS_VEG
213 IF (present(palbuv_veg)) palbuv_veg = dtgr%XPAR_ALBUV_VEG
215 IF (present(palbnir_soil)) palbnir_soil(:) = dtgr%XPAR_ALBNIR_SOIL
216 IF (present(palbvis_soil)) palbvis_soil(:) = dtgr%XPAR_ALBVIS_SOIL
217 IF (present(palbuv_soil)) palbuv_soil(:) = dtgr%XPAR_ALBUV_SOIL
219 IF (present(pgmes))
THEN
220 IF (
SIZE(pgmes)>0) pgmes = dtgr%XPAR_GMES
223 IF (present(pbslai))
THEN
224 IF (
SIZE(pbslai)>0) pbslai = dtgr%XPAR_BSLAI
227 IF (present(psefold))
THEN
228 IF (
SIZE(psefold)>0) psefold = dtgr%XPAR_SEFOLD
231 IF (present(pgc))
THEN
232 IF (
SIZE(pgc)>0) pgc = dtgr%XPAR_GC
235 IF (present(pdmax))
THEN
236 IF (
SIZE(pdmax)>0) pdmax = dtgr%XPAR_DMAX
239 IF (present(pre25))
THEN
240 IF (
SIZE(pre25)>0) pre25 = dtgr%XPAR_RE25
243 IF (present(plaimin))
THEN
244 IF (
SIZE(plaimin)>0) plaimin = dtgr%XPAR_LAIMIN
247 IF (present(pce_nitro))
THEN
248 IF (
SIZE(pce_nitro)>0) pce_nitro = dtgr%XPAR_CE_NITRO
251 IF (present(pcf_nitro))
THEN
252 IF (
SIZE(pcf_nitro)>0) pcf_nitro = dtgr%XPAR_CF_NITRO
255 IF (present(pcna_nitro))
THEN
256 IF (
SIZE(pcna_nitro)>0) pcna_nitro = dtgr%XPAR_CNA_NITRO
259 IF (present(pf2i))
THEN
260 IF (
SIZE(pf2i)>0) pf2i = dtgr%XPAR_F2I
263 IF (present(ostress))
THEN
264 IF (
SIZE(ostress)>0) ostress = dtgr%LDATA_STRESS
266 IF (lhook) CALL dr_hook(
'INIT_FROM_DATA_GREENROOF_N',1,zhook_handle)
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)