51 USE modd_co2v_par
, ONLY : xanfminit, xcondctmin
54 USE modd_snow_par
, ONLY : xz0sn
63 USE modi_get_type_dim_n
78 CHARACTER(LEN=6),
INTENT(IN) :: HPROGRAM
79 CHARACTER(LEN=3),
INTENT(IN) :: HPATCH
86 INTEGER :: JLAYER, JNBIOMASS
87 CHARACTER(LEN=30) :: YRECFM
88 CHARACTER(LEN=4) :: YLVL
89 REAL,
DIMENSION(:),
ALLOCATABLE :: ZWORK
91 REAL(KIND=JPRB) :: ZHOOK_HANDLE
98 IF (
lhook)
CALL dr_hook(
'READ_TEB_GREENROOF_N',0,zhook_handle)
110 iwork = io%NGROUND_LAYER
113 WRITE(ylvl,
'(I2)') jlayer
114 yrecfm=hpatch//
'GR_TG'//adjustl(ylvl(:len_trim(ylvl)))
115 yrecfm=adjustl(yrecfm)
116 CALL read_surf(hprogram,yrecfm,zwork(:),iresp)
117 pek%XTG(:,jlayer) = zwork
123 DO jlayer=1,io%NGROUND_LAYER
124 WRITE(ylvl,
'(I2)') jlayer
125 yrecfm=hpatch//
'GR_WG'//adjustl(ylvl(:len_trim(ylvl)))
126 yrecfm=adjustl(yrecfm)
127 CALL read_surf(hprogram,yrecfm,zwork(:),iresp)
128 pek%XWG(:,jlayer) = zwork
133 DO jlayer=1,io%NGROUND_LAYER
134 WRITE(ylvl,
'(I2)') jlayer
135 yrecfm=hpatch//
'GR_WGI'//adjustl(ylvl(:len_trim(ylvl)))
136 yrecfm=adjustl(yrecfm)
137 CALL read_surf(hprogram,yrecfm,zwork(:),iresp)
138 pek%XWGI(:,jlayer) = zwork
143 yrecfm=hpatch//
'GR_WR' 144 yrecfm=adjustl(yrecfm)
145 CALL read_surf(hprogram,yrecfm,pek%XWR(:),iresp)
149 IF (io%CPHOTO==
'NIT' .OR. io%CPHOTO==
'NCB')
THEN 150 yrecfm = hpatch//
'GR_LAI' 151 yrecfm=adjustl(yrecfm)
152 CALL read_surf(hprogram,yrecfm,pek%XLAI(:),iresp)
157 CALL read_gr_snow(hprogram,
'GR',hpatch,ilu,ilu,p%NR_P,0,pek%TSNOW )
166 yrecfm = hpatch//
'GR_RESA' 167 yrecfm=adjustl(yrecfm)
169 CALL read_surf(hprogram,yrecfm,pek%XRESA(:),iresp)
175 IF (io%CPHOTO/=
'NON')
THEN 178 pek%XANFM(:) = xanfminit
182 IF (io%CPHOTO==
'AST')
THEN 183 pek%XBIOMASS(:,:) = 0.
184 pek%XRESP_BIOMASS(:,:) = 0.
185 ELSEIF (io%CPHOTO==
'NIT')
THEN 186 pek%XBIOMASS(:,:) = 0.
187 DO jnbiomass=1,io%NNBIOMASS
188 WRITE(ylvl,
'(I1)') jnbiomass
189 yrecfm=hpatch//
'GR_BIOMA'//adjustl(ylvl(:len_trim(ylvl)))
190 yrecfm=adjustl(yrecfm)
191 CALL read_surf(hprogram,yrecfm,pek%XBIOMASS(:,jnbiomass),iresp)
194 pek%XRESP_BIOMASS(:,:) = 0.
195 DO jnbiomass=2,io%NNBIOMASS
196 WRITE(ylvl,
'(I1)') jnbiomass
197 yrecfm=hpatch//
'GR_RESPI'//adjustl(ylvl(:len_trim(ylvl)))
198 yrecfm=adjustl(yrecfm)
199 CALL read_surf(hprogram,yrecfm,pek%XRESP_BIOMASS(:,jnbiomass),iresp)
205 IF (
lhook)
CALL dr_hook(
'READ_TEB_GREENROOF_N',1,zhook_handle)
subroutine get_type_dim_n(DTCO, U, HTYPE, KDIM)
subroutine read_teb_greenroof_n(DTCO, U, IO, P, PEK, HPROGRAM, HPA
subroutine read_gr_snow(HPROGRAM, HSURFTYPE, HPREFIX, KLU, KSIZE_P, KMASK_P, KPATCH, TPSNOW, HDI