Changeset 9556
- Timestamp:
- 2018-05-05T11:51:20+02:00 (7 years ago)
- Location:
- branches/2017/dev_merge_2017/NEMOGCM
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/TOP_SRC/trcrst.F90
r7753 r9556 186 186 INTEGER :: jlibalt = jprstlib 187 187 LOGICAL :: llok 188 REAL(wp) :: z kt, zrdttrc1189 REAL(wp) :: zndastp188 REAL(wp) :: zrdttrc1, zkt, zndastp, zdayfrac, ksecs, ktime 189 INTEGER :: ihour, iminute 190 190 191 191 ! Time domain : restart … … 222 222 ! ! set the date in offline mode 223 223 IF( ln_rsttr .AND. nn_rsttr == 2 ) THEN 224 CALL iom_get( numrtr, 'ndastp', zndastp ) 224 CALL iom_get( numrtr, 'ndastp', zndastp ) 225 225 ndastp = NINT( zndastp ) 226 226 CALL iom_get( numrtr, 'adatrj', adatrj ) 227 CALL iom_get( numrtr, 'ntime' , ktime ) 228 nn_time0=INT(ktime) 229 ! calculate start time in hours and minutes 230 zdayfrac=adatrj-INT(adatrj) 231 ksecs = NINT(zdayfrac*86400) ! Nearest second to catch rounding errors in adatrj 232 ihour = INT(ksecs/3600) 233 iminute = ksecs/60-ihour*60 234 235 ! Add to nn_time0 236 nhour = nn_time0 / 100 237 nminute = ( nn_time0 - nhour * 100 ) 238 nminute=nminute+iminute 239 240 IF( nminute >= 60 ) THEN 241 nminute=nminute-60 242 nhour=nhour+1 243 ENDIF 244 nhour=nhour+ihour 245 IF( nhour >= 24 ) THEN 246 nhour=nhour-24 247 adatrj=adatrj+1 248 ENDIF 249 nn_time0 = nhour * 100 + nminute 250 adatrj = INT(adatrj) ! adatrj set to integer as nn_time0 updated 227 251 ELSE 228 ndastp = ndate0 - 1 ! ndate0 read in the namelist in dom_nam 229 adatrj = ( REAL( nittrc000-1, wp ) * rdt ) / rday 252 ! parameters corresponding to nit000 - 1 (as we start the step 253 ! loop with a call to day) 254 ndastp = ndate0 ! ndate0 read in the namelist in dom_nam 255 nhour = nn_time0 / 100 256 nminute = ( nn_time0 - nhour * 100 ) 257 IF( nhour*3600+nminute*60-ndt05 .lt. 0 ) ndastp=ndastp-1 ! Start hour is specified in the namelist (default 0) 258 adatrj = ( REAL( nit000-1, wp ) * rdt ) / rday 230 259 ! note this is wrong if time step has changed during run 231 260 ENDIF 261 IF( ABS(adatrj - REAL(NINT(adatrj),wp)) < 0.1 / rday ) adatrj = REAL(NINT(adatrj),wp) ! avoid truncation error 232 262 ! 233 263 IF(lwp) THEN … … 235 265 WRITE(numout,*) ' date ndastp : ', ndastp 236 266 WRITE(numout,*) ' number of elapsed days since the begining of run : ', adatrj 267 WRITE(numout,*) ' nn_time0 : ', nn_time0 237 268 WRITE(numout,*) 238 269 ENDIF … … 257 288 CALL iom_rstput( kt, nitrst, numrtw, 'adatrj' , adatrj ) ! number of elapsed days since 258 289 ! ! the begining of the run [s] 290 CALL iom_rstput( kt, nitrst, numrtw, 'ntime' , REAL( nn_time0, wp)) ! time 259 291 ENDIF 260 292 -
branches/2017/dev_merge_2017/NEMOGCM/SETTE/sette.sh
r9553 r9556 289 289 set_namelist namelist_cfg cn_exp \"O2L3P_LONG\" 290 290 set_namelist namelist_cfg nn_it000 1 291 set_namelist namelist_cfg nn_itend 1 000292 set_namelist namelist_cfg nn_stock 500291 set_namelist namelist_cfg nn_itend 1200 292 set_namelist namelist_cfg nn_stock 600 293 293 set_namelist namelist_cfg jpni 4 294 294 set_namelist namelist_cfg jpnj 8 … … 322 322 cd ${EXE_DIR} 323 323 set_namelist namelist_cfg cn_exp \"O2L3P_SHORT\" 324 set_namelist namelist_cfg nn_it000 501325 set_namelist namelist_cfg nn_itend 1 000326 set_namelist namelist_cfg nn_stock 500324 set_namelist namelist_cfg nn_it000 601 325 set_namelist namelist_cfg nn_itend 1200 326 set_namelist namelist_cfg nn_stock 600 327 327 set_namelist namelist_cfg ln_rstart .true. 328 328 set_namelist namelist_cfg nn_rstctl 2 … … 332 332 set_namelist namelist_top_cfg ln_rsttr .true. 333 333 set_namelist namelist_top_cfg nn_rsttr 2 334 set_namelist namelist_cfg cn_ocerst_in \"O2L3P_LONG_00000 500_restart\"335 set_namelist namelist_top_cfg cn_trcrst_in \"O2L3P_LONG_00000 500_restart_trc\"336 set_namelist namelist_ice_cfg cn_icerst_in \"O2L3P_LONG_00000 500_restart_ice\"334 set_namelist namelist_cfg cn_ocerst_in \"O2L3P_LONG_00000600_restart\" 335 set_namelist namelist_top_cfg cn_trcrst_in \"O2L3P_LONG_00000600_restart_trc\" 336 set_namelist namelist_ice_cfg cn_icerst_in \"O2L3P_LONG_00000600_restart_ice\" 337 337 # put ln_ironsed, ln_river, ln_ndepo, ln_dust 338 338 # if not you need input files, and for tests is not necessary … … 351 351 L_NPROC=$(( $i - 1 )) 352 352 L_NPROC=`printf "%04d\n" ${L_NPROC}` 353 ln -sf ../LONG/O2L3P_LONG_00000 500_restart_${L_NPROC}.nc .354 ln -sf ../LONG/O2L3P_LONG_00000 500_restart_trc_${L_NPROC}.nc .355 ln -sf ../LONG/O2L3P_LONG_00000 500_restart_ice_${L_NPROC}.nc .356 ln -sf ../LONG/O2L3P_LONG_icebergs_00000 500_restart_${L_NPROC}.nc O2L3P_LONG_00000500_restart_icebergs_${L_NPROC}.nc353 ln -sf ../LONG/O2L3P_LONG_00000600_restart_${L_NPROC}.nc . 354 ln -sf ../LONG/O2L3P_LONG_00000600_restart_trc_${L_NPROC}.nc . 355 ln -sf ../LONG/O2L3P_LONG_00000600_restart_ice_${L_NPROC}.nc . 356 ln -sf ../LONG/O2L3P_LONG_icebergs_00000600_restart_${L_NPROC}.nc O2L3P_LONG_00000600_restart_icebergs_${L_NPROC}.nc 357 357 done 358 358 if [ ${USING_MPMD} == "yes" ] ; then … … 379 379 set_namelist namelist_cfg cn_exp \"O2L3P_48\" 380 380 set_namelist namelist_cfg nn_it000 1 381 set_namelist namelist_cfg nn_itend 450381 set_namelist namelist_cfg nn_itend 1200 382 382 set_namelist namelist_cfg jpni 4 383 383 set_namelist namelist_cfg jpnj 8 … … 416 416 set_namelist namelist_cfg cn_exp \"O2L3P_84\" 417 417 set_namelist namelist_cfg nn_it000 1 418 set_namelist namelist_cfg nn_itend 450418 set_namelist namelist_cfg nn_itend 1200 419 419 set_namelist namelist_cfg jpni 8 420 420 set_namelist namelist_cfg jpnj 4 … … 463 463 set_namelist namelist_cfg cn_exp \"OFFP_LONG\" 464 464 set_namelist namelist_cfg nn_it000 1 465 set_namelist namelist_cfg nn_itend 40466 set_namelist namelist_cfg nn_stock 20465 set_namelist namelist_cfg nn_itend 360 466 set_namelist namelist_cfg nn_stock 180 467 467 set_namelist namelist_cfg jpni 4 468 468 set_namelist namelist_cfg jpnj 8 … … 495 495 cd ${EXE_DIR} 496 496 set_namelist namelist_cfg cn_exp \"OFFP_SHORT\" 497 set_namelist namelist_cfg nn_it000 21498 set_namelist namelist_cfg nn_itend 40499 set_namelist namelist_cfg nn_stock 20497 set_namelist namelist_cfg nn_it000 181 498 set_namelist namelist_cfg nn_itend 360 499 set_namelist namelist_cfg nn_stock 180 500 500 set_namelist namelist_cfg jpni 4 501 501 set_namelist namelist_cfg jpnj 8 … … 503 503 set_namelist namelist_top_cfg ln_rsttr .true. 504 504 set_namelist namelist_top_cfg nn_rsttr 2 505 set_namelist namelist_top_cfg cn_trcrst_in \"OFFP_LONG_000000 20_restart_trc\"505 set_namelist namelist_top_cfg cn_trcrst_in \"OFFP_LONG_000000180_restart_trc\" 506 506 for (( i=1; i<=$NPROC; i++)) ; do 507 507 L_NPROC=$(( $i - 1 )) 508 508 L_NPROC=`printf "%04d\n" ${L_NPROC}` 509 ln -sf ../LONG/OFFP_LONG_000000 20_restart_trc_${L_NPROC}.nc .509 ln -sf ../LONG/OFFP_LONG_000000180_restart_trc_${L_NPROC}.nc . 510 510 done 511 511 # put ln_ironsed, ln_river, ln_ndepo, ln_dust … … 545 545 set_namelist namelist_cfg cn_exp \"OFFP_48\" 546 546 set_namelist namelist_cfg nn_it000 1 547 set_namelist namelist_cfg nn_itend 40547 set_namelist namelist_cfg nn_itend 360 548 548 set_namelist namelist_cfg jpni 4 549 549 set_namelist namelist_cfg jpnj 8 … … 582 582 set_namelist namelist_cfg cn_exp \"OFFP_84\" 583 583 set_namelist namelist_cfg nn_it000 1 584 set_namelist namelist_cfg nn_itend 40584 set_namelist namelist_cfg nn_itend 360 585 585 set_namelist namelist_cfg jpni 8 586 586 set_namelist namelist_cfg jpnj 4
Note: See TracChangeset
for help on using the changeset viewer.