- Timestamp:
- 2016-09-19T16:36:50+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/CO6_KD490/NEMOGCM/NEMO/OPA_SRC/ICB/icbrst.F90
r6332 r6939 21 21 USE dom_oce ! NEMO domain 22 22 USE in_out_manager ! NEMO IO routines 23 USE ioipsl, ONLY : ju2ymds ! for calendar 23 24 USE lib_mpp ! NEMO MPI library, lk_mpp in particular 24 USE ioipsl, ONLY : ju2ymds ! for calendar25 25 USE netcdf ! netcdf routines for IO 26 26 USE icb_oce ! define iceberg arrays … … 66 66 ! start and count arrays 67 67 LOGICAL :: ll_found_restart 68 CHARACTER(len=256) :: cl_path69 CHARACTER(len=256) :: cl_filename68 CHARACTER(len=256) :: cl_path 69 CHARACTER(len=256) :: cl_filename 70 70 CHARACTER(len=NF90_MAX_NAME) :: cl_dname 71 71 TYPE(iceberg) :: localberg ! NOT a pointer but an actual local variable … … 233 233 INTEGER :: jn ! dummy loop index 234 234 INTEGER :: ix_dim, iy_dim, ik_dim, in_dim 235 CHARACTER(len=256) :: cl_path 236 CHARACTER(len=256) :: cl_filename 237 INTEGER :: iyear, imonth, iday 238 REAL (wp) :: zsec 239 CHARACTER(len=256) :: cl_path 240 CHARACTER(len=256) :: cl_filename 235 INTEGER :: iyear, imonth, iday 236 REAL (wp) :: zsec 237 REAL (wp) :: zfjulday 238 CHARACTER(len=256) :: cl_path 239 CHARACTER(len=256) :: cl_filename 241 240 CHARACTER(LEN=20) :: clkt ! ocean time-step deine as a character 242 241 TYPE(iceberg), POINTER :: this … … 247 246 cl_path = TRIM(cn_ocerst_outdir) 248 247 IF( cl_path(LEN_TRIM(cl_path):) /= '/' ) cl_path = TRIM(cl_path) // '/' 249 IF ( ln_rstdate ) THEN 250 CALL ju2ymds( fjulday + rdttra(1) / rday, iyear, imonth, iday, zsec ) 251 WRITE(clkt, '(i4.4,2i2.2)') iyear, imonth, iday 252 ELSE 253 IF( kt > 999999999 ) THEN ; WRITE(clkt, * ) kt 254 ELSE ; WRITE(clkt, '(i8.8)') kt 255 ENDIF 256 ENDIF 248 IF ( ln_rstdate ) THEN 249 zfjulday = fjulday + rdttra(1) / rday 250 IF( ABS(zfjulday - REAL(NINT(zfjulday),wp)) < 0.1 / rday ) zfjulday = REAL(NINT(zfjulday),wp) ! avoid truncation error 251 CALL ju2ymds( zfjulday, iyear, imonth, iday, zsec ) 252 WRITE(clkt, '(i4.4,2i2.2)') iyear, imonth, iday 253 ELSE 254 IF( kt > 999999999 ) THEN ; WRITE(clkt, * ) kt 255 ELSE ; WRITE(clkt, '(i8.8)') kt 256 ENDIF 257 ENDIF 257 258 IF( lk_mpp ) THEN 258 WRITE(cl_filename,'(A,"_icebergs_",A,"_restart_",I4.4,".nc")') TRIM(cexper), TRIM(ADJUSTL(clkt)), narea-1 259 WRITE(cl_filename,'(A,"_icebergs_",A,"_restart_",I4.4,".nc")') TRIM(cexper), TRIM(ADJUSTL(clkt)), narea-1 259 260 ELSE 260 WRITE(cl_filename,'(A,"_icebergs_",A,"_restart.nc")') TRIM(cexper), TRIM(ADJUSTL(clkt)) 261 WRITE(cl_filename,'(A,"_icebergs_",A,"_restart.nc")') TRIM(cexper), TRIM(ADJUSTL(clkt)) 261 262 ENDIF 262 263 IF (nn_verbose_level >= 0) WRITE(numout,'(2a)') 'icebergs, write_restart: creating ',TRIM(cl_path)//TRIM(cl_filename)
Note: See TracChangeset
for help on using the changeset viewer.