50 USE modi_get_dim_full_n
51 USE modi_ol_define_dim
54 USE modi_def_var_netcdf
55 USE modi_ol_write_coord
56 USE modi_ol_write_proj
72 CHARACTER(LEN=*),
DIMENSION(:),
INTENT(IN) :: HSELECT
74 CHARACTER(LEN=6),
INTENT(IN) :: HPROGRAM
75 INTEGER,
INTENT(IN) :: KLUOUT
80 CHARACTER(LEN=100),
DIMENSION(:),
POINTER :: YNAME_DIM
81 CHARACTER(LEN=100),
DIMENSION(1) :: YATT_TITLE, YATT
82 CHARACTER(LEN=40),
DIMENSION(1) :: YDATE
83 CHARACTER(LEN=13),
DIMENSION(1) :: YUNIT1, YUNIT2
84 CHARACTER(LEN=100) :: YCOMMENT
85 CHARACTER(LEN=50) :: YFILE
86 CHARACTER(LEN=12) :: YRECFM
87 CHARACTER(LEN=3) :: YPAS, YLVL
88 CHARACTER(LEN=3) :: YPATCH
89 CHARACTER(LEN=2) :: YNUM
91 INTEGER,
DIMENSION(:),
POINTER :: IDIMS, IDDIM
93 INTEGER :: IDIM1, INDIMS
94 INTEGER :: IFILE_ID, IDIMID
95 INTEGER :: JRET, JFILE
97 REAL,
DIMENSION(:),
POINTER :: ZX, ZY
98 REAL,
DIMENSION(:),
POINTER :: ZLAT,ZLON
100 REAL(KIND=JPRB) :: ZHOOK_HANDLE
106 IF (
lhook)
CALL dr_hook(
'INIT_OUTFN_TEB_N',0,zhook_handle)
109 CALL ol_define_dim(ug, u%NSIZE_FULL, hprogram, kluout, ini, idim1, yunit1, yunit2, &
110 zx, zy, idims, iddim, yname_dim,plat=zlat,plon=zlon)
118 yatt_title(1)=
'units' 120 yfile=
'TEB_DIAGNOSTICS.OUT.nc' 121 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
122 jret=nf90_redef(ifile_id)
133 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
134 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
137 IF (tm%TD%O%LPGD .AND.
ASSOCIATED(tm%NT%AL(1)%XBLD))
THEN 139 yfile=
'TEB_PGD.OUT.nc' 140 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
141 jret=nf90_redef(ifile_id)
152 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
153 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
157 yfile=
'TEB_DIAG_CUMUL.OUT.nc' 158 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
159 jret=nf90_redef(ifile_id)
170 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
171 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
176 yfile=
'TEB_CANOPY.OUT.nc' 177 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
178 jret=nf90_redef(ifile_id)
189 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
190 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
196 DEALLOCATE(idims, iddim, yname_dim)
198 CALL ol_define_dim(ug, u%NSIZE_FULL, hprogram, kluout, ini, idim1, yunit1, yunit2, &
199 zx, zy, idims, iddim, yname_dim, knsnlayer=1)
201 yfile=
'TEB_PROGNOSTIC.OUT.nc' 202 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
203 jret=nf90_redef(ifile_id)
214 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
215 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
217 IF (tm%TOP%LGARDEN)
THEN 219 DEALLOCATE(idims, iddim, yname_dim)
221 CALL ol_define_dim(ug, u%NSIZE_FULL, hprogram, kluout, ini, idim1, yunit1, yunit2, &
222 zx, zy, idims, iddim, yname_dim,knsnlayer=gdm%NPE%AL(1)%TSNOW%NLAYER)
224 yfile=
'GARDEN_PROGNOSTIC.OUT.nc' 225 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
226 jret=nf90_redef(ifile_id)
237 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
238 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
240 IF (tm%TOP%LGREENROOF)
THEN 242 DEALLOCATE(idims, iddim, yname_dim)
244 CALL ol_define_dim(ug, u%NSIZE_FULL, hprogram, kluout, ini, idim1, yunit1, yunit2, &
245 zx, zy, idims, iddim, yname_dim, knsnlayer=grm%NPE%AL(1)%TSNOW%NLAYER)
247 yfile=
'GREENROOF_PROGNOSTIC.OUT.nc' 248 CALL create_file(yfile,idims,yname_dim,ifile_id,iddim)
249 jret=nf90_redef(ifile_id)
260 CALL ol_write_coord(hselect,yfile,ifile_id,iddim,yatt_title,yname_dim,&
261 yunit1,yunit2,idim1,ydate,zx,zy,zlon,zlat)
267 IF (
ASSOCIATED(zx))
DEALLOCATE(zx,zy)
268 DEALLOCATE(zlon,zlat)
270 IF (
lhook)
CALL dr_hook(
'INIT_OUTFN_TEB_N',1,zhook_handle)
subroutine get_date_ol(TPTIME, PTSTEP, HDATE)
subroutine get_dim_full_n(KDIM_FULL_IN, KDIM_FULL_OUT)
character(len=200), dimension(25) xnetcdf_filename_out
subroutine ol_write_proj(HSELECT, KFILE_ID, UG)
subroutine init_outfn_teb_n(TM, GDM, GRM, UG, U, HSELECT, HPROGRAM, KLUOUT)
subroutine ol_define_dim(UG, KSIZE_FULL, HPROGRAM, KLUOUT, KNI, KDIM1, HUNIT1, HUNIT2, PX, PY, KDIMS, KDDIM, HNAME_DIM, KNPATCH, KNSNLAYER, PLAT, PLON)
subroutine create_file(HFILE, KDIMS, HNAM_DIM, KFILE_ID, KDIM_ID)
integer, dimension(25) xnetcdf_fileid_out
subroutine ol_write_coord(HSELECT, HFILE, KFILE_ID, KDDIM, HATT_TITLE, HNAME_DIM, HUNIT1, HUNIT2, KDIM1, HDATE, PX, PY, PLON, PLAT)