73 USE modi_writesurf_pgd_isba_par_n
74 USE modi_writesurf_pgd_tsz0_par_n
76 USE yomhook
,ONLY : lhook, dr_hook
77 USE parkind1
,ONLY : jprb
90 TYPE(isba_grid_t
),
INTENT(INOUT) :: ig
91 TYPE(isba_t
),
INTENT(INOUT) :: i
94 CHARACTER(LEN=6),
INTENT(IN) :: hprogram
100 CHARACTER(LEN=12) :: yrecfm
101 CHARACTER(LEN=100):: ycomment
102 CHARACTER(LEN=4 ) :: ylvl
104 INTEGER :: jj, jlayer
105 INTEGER :: isize_lmeb_patch
107 REAL(KIND=JPRB) :: zhook_handle
115 IF (lhook) CALL dr_hook(
'WRITESURF_PGD_ISBA_N',0,zhook_handle)
119 hprogram,yrecfm,i%CISBA,iresp,hcomment=ycomment)
126 hprogram,yrecfm,i%CPEDOTF,iresp,hcomment=ycomment)
133 hprogram,yrecfm,i%CPHOTO,iresp,hcomment=ycomment)
140 hprogram,yrecfm,i%LTR_ML,iresp,hcomment=ycomment)
147 hprogram,yrecfm,i%XRM_PATCH,iresp,hcomment=ycomment)
151 yrecfm=
'GROUND_LAYER'
154 hprogram,yrecfm,i%NGROUND_LAYER,iresp,hcomment=ycomment)
158 IF(i%CISBA==
'DIF')
THEN
159 DO jlayer=1,i%NGROUND_LAYER
160 WRITE(ylvl,
'(I4)') jlayer
161 yrecfm=
'SOILGRID'//adjustl(ylvl(:len_trim(ylvl)))
162 ycomment=
'Depth of ISBA soilgrid layer '//adjustl(ylvl(:len_trim(ylvl)))
164 hprogram,yrecfm,i%XSOILGRID(jlayer),iresp,hcomment=ycomment)
173 hprogram,yrecfm,i%NNBIOMASS,iresp,hcomment=ycomment)
177 yrecfm=
'PATCH_NUMBER'
180 hprogram,yrecfm,i%NPATCH,iresp,hcomment=ycomment)
187 hprogram,yrecfm,i%LECOCLIMAP,iresp,hcomment=ycomment)
192 ycomment=
'(LOGICAL LIST)'
194 hprogram,yrecfm,i%LMEB_PATCH(:),iresp,hcomment=ycomment,hdir=
'-')
196 isize_lmeb_patch = count(i%LMEB_PATCH(:))
198 IF (isize_lmeb_patch>0)
THEN
202 yrecfm=
'FORC_MEASURE'
205 hprogram,yrecfm,i%LFORC_MEASURE,iresp,hcomment=ycomment)
212 hprogram,yrecfm,i%LMEB_LITTER,iresp,hcomment=ycomment)
219 hprogram,yrecfm,i%LMEB_GNDRES,iresp,hcomment=ycomment)
229 ycomment=
'(LOGICAL LIST)'
231 hprogram,yrecfm,i%LCOVER(:),iresp,hcomment=ycomment,hdir=
'-')
233 ycomment=
'COVER FIELDS'
235 hprogram,
'COVER',i%XCOVER(:,:),i%LCOVER,iresp,hcomment=ycomment)
242 hprogram,yrecfm,i%XZS(:),iresp,hcomment=ycomment)
247 hprogram,ig%CGRID,ig%XGRID_PAR,ig%XLAT,ig%XLON,ig%XMESH_SIZE,iresp,i%XZ0EFFJPDIR)
256 hprogram,yrecfm,i%XCLAY(:,1),iresp,hcomment=ycomment)
263 hprogram,yrecfm,i%XSAND(:,1),iresp,hcomment=ycomment)
270 hprogram,yrecfm,i%LSOCP,iresp,hcomment=ycomment)
277 hprogram,yrecfm,i%XSOC(:,1),iresp,hcomment=ycomment)
280 hprogram,yrecfm,i%XSOC(:,2),iresp,hcomment=ycomment)
289 hprogram,yrecfm,i%LPERM,iresp,hcomment=ycomment)
295 hprogram,yrecfm,i%XPERM(:),iresp,hcomment=ycomment)
303 hprogram,yrecfm,i%LGW,iresp,hcomment=ycomment)
306 ycomment=
'X_Y_GWFRAC'
309 hprogram,yrecfm,i%XGW(:),iresp,hcomment=ycomment)
317 hprogram,yrecfm,i%LNOF,iresp,hcomment=ycomment)
324 hprogram,yrecfm,i%XPH(:),iresp,hcomment=ycomment)
329 hprogram,yrecfm,i%XFERT(:),iresp,hcomment=ycomment)
338 hprogram,yrecfm,i%XAOSIP,iresp,hcomment=ycomment)
343 hprogram,yrecfm,i%XAOSIM,iresp,hcomment=ycomment)
348 hprogram,yrecfm,i%XAOSJP,iresp,hcomment=ycomment)
353 hprogram,yrecfm,i%XAOSJM,iresp,hcomment=ycomment)
358 hprogram,yrecfm,i%XHO2IP,iresp,hcomment=ycomment)
363 hprogram,yrecfm,i%XHO2IM,iresp,hcomment=ycomment)
368 hprogram,yrecfm,i%XHO2JP,iresp,hcomment=ycomment)
373 hprogram,yrecfm,i%XHO2JM,iresp,hcomment=ycomment)
376 ycomment=
'X_Y_SSO_SLOPE (-)'
378 hprogram,yrecfm,i%XSSO_SLOPE,iresp,hcomment=ycomment)
383 ycomment=
'X_Y_RUNOFFB'
385 hprogram,yrecfm,i%XRUNOFFB,iresp,hcomment=ycomment)
390 ycomment=
'X_Y_WDRAIN'
392 hprogram,yrecfm,i%XWDRAIN,iresp,hcomment=ycomment)
399 hprogram,yrecfm,i%LCTI,iresp,hcomment=ycomment)
404 ycomment=
'X_Y_TI_MIN'
406 hprogram,yrecfm,i%XTI_MIN,iresp,hcomment=ycomment)
409 ycomment=
'X_Y_TI_MAX'
411 hprogram,yrecfm,i%XTI_MAX,iresp,hcomment=ycomment)
414 ycomment=
'X_Y_TI_MEAN'
416 hprogram,yrecfm,i%XTI_MEAN,iresp,hcomment=ycomment)
419 ycomment=
'X_Y_TI_STD'
421 hprogram,yrecfm,i%XTI_STD,iresp,hcomment=ycomment)
424 ycomment=
'X_Y_TI_SKEW'
426 hprogram,yrecfm,i%XTI_SKEW,iresp,hcomment=ycomment)
438 IF (lhook) CALL dr_hook(
'WRITESURF_PGD_ISBA_N',1,zhook_handle)
subroutine writesurf_pgd_isba_n(DGU, DTI, DTZ, IG, I, U, HPROGRAM)
subroutine write_grid(DGU, U, HPROGRAM, HGRID, PGRID_PAR, PLAT, PLON, PMESH_SIZE, KRESP, PDIR, HDIR)
subroutine writesurf_pgd_isba_par_n(DGU, U, DTI, HPROGRAM)
subroutine, public write_surf_cov(DGU, U, HPROGRAM, HREC, PFIELD, OFLAG, KRESP, HCOMMENT, HDIR)
subroutine writesurf_pgd_tsz0_par_n(DGU, U, DTZ, HPROGRAM)