- Timestamp:
- 2018-04-26T16:54:23+02:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90
r9367 r9506 1344 1344 CHARACTER(len=*), INTENT(in) :: cdrw ! "READ"/"WRITE" flag 1345 1345 ! 1346 INTEGER :: id1, id2 ! local integers 1346 1347 !!---------------------------------------------------------------------- 1347 1348 ! 1348 IF( TRIM(cdrw) == 'READ' ) THEN 1349 CALL iom_get( numror, jpdom_autoglo, 'ub2_b' , ub2_b (:,:), ldxios = lrxios ) 1350 CALL iom_get( numror, jpdom_autoglo, 'vb2_b' , vb2_b (:,:), ldxios = lrxios ) 1351 CALL iom_get( numror, jpdom_autoglo, 'un_bf' , un_bf (:,:), ldxios = lrxios ) 1352 CALL iom_get( numror, jpdom_autoglo, 'vn_bf' , vn_bf (:,:), ldxios = lrxios ) 1353 IF( .NOT.ln_bt_av ) THEN 1354 CALL iom_get( numror, jpdom_autoglo, 'sshbb_e' , sshbb_e(:,:), ldxios = lrxios ) 1355 CALL iom_get( numror, jpdom_autoglo, 'ubb_e' , ubb_e(:,:), ldxios = lrxios ) 1356 CALL iom_get( numror, jpdom_autoglo, 'vbb_e' , vbb_e(:,:), ldxios = lrxios ) 1357 CALL iom_get( numror, jpdom_autoglo, 'sshb_e' , sshb_e(:,:), ldxios = lrxios ) 1358 CALL iom_get( numror, jpdom_autoglo, 'ub_e' , ub_e(:,:), ldxios = lrxios ) 1359 CALL iom_get( numror, jpdom_autoglo, 'vb_e' , vb_e(:,:), ldxios = lrxios ) 1360 ENDIF 1349 IF( TRIM(cdrw) == 'READ' ) THEN ! Read/initialise 1350 ! ! --------------- 1351 IF( ln_rstart .AND. ln_bt_fw ) THEN !* Read the restart file 1352 CALL iom_get( numror, jpdom_autoglo, 'ub2_b' , ub2_b (:,:), ldxios = lrxios ) 1353 CALL iom_get( numror, jpdom_autoglo, 'vb2_b' , vb2_b (:,:), ldxios = lrxios ) 1354 CALL iom_get( numror, jpdom_autoglo, 'un_bf' , un_bf (:,:), ldxios = lrxios ) 1355 CALL iom_get( numror, jpdom_autoglo, 'vn_bf' , vn_bf (:,:), ldxios = lrxios ) 1356 IF( .NOT.ln_bt_av ) THEN 1357 CALL iom_get( numror, jpdom_autoglo, 'sshbb_e' , sshbb_e(:,:), ldxios = lrxios ) 1358 CALL iom_get( numror, jpdom_autoglo, 'ubb_e' , ubb_e(:,:), ldxios = lrxios ) 1359 CALL iom_get( numror, jpdom_autoglo, 'vbb_e' , vbb_e(:,:), ldxios = lrxios ) 1360 CALL iom_get( numror, jpdom_autoglo, 'sshb_e' , sshb_e(:,:), ldxios = lrxios ) 1361 CALL iom_get( numror, jpdom_autoglo, 'ub_e' , ub_e(:,:), ldxios = lrxios ) 1362 CALL iom_get( numror, jpdom_autoglo, 'vb_e' , vb_e(:,:), ldxios = lrxios ) 1363 ENDIF 1361 1364 #if defined key_agrif 1362 ! Read time integrated fluxes1363 IF ( .NOT.Agrif_Root() ) THEN1364 CALL iom_get( numror, jpdom_autoglo, 'ub2_i_b' , ub2_i_b(:,:), ldxios = lrxios )1365 CALL iom_get( numror, jpdom_autoglo, 'vb2_i_b' , vb2_i_b(:,:), ldxios = lrxios )1366 ENDIF1365 ! Read time integrated fluxes 1366 IF ( .NOT.Agrif_Root() ) THEN 1367 CALL iom_get( numror, jpdom_autoglo, 'ub2_i_b' , ub2_i_b(:,:), ldxios = lrxios ) 1368 CALL iom_get( numror, jpdom_autoglo, 'vb2_i_b' , vb2_i_b(:,:), ldxios = lrxios ) 1369 ENDIF 1367 1370 #endif 1368 ! 1369 ELSEIF( TRIM(cdrw) == 'WRITE' ) THEN 1371 ELSE !* Start from rest 1372 IF(lwp) WRITE(numout,*) 1373 IF(lwp) WRITE(numout,*) ' ==>>> start from rest: set barotropic values to 0' 1374 ub2_b (:,:) = 0._wp ; vb2_b (:,:) = 0._wp ! used in the 1st interpol of agrif 1375 un_adv(:,:) = 0._wp ; vn_adv(:,:) = 0._wp ! used in the 1st interpol of agrif 1376 un_bf (:,:) = 0._wp ; vn_bf (:,:) = 0._wp ! used in the 1st update of agrif 1377 #if defined key_agrif 1378 IF ( .NOT.Agrif_Root() ) THEN 1379 ub2_i_b(:,:) = 0._wp ; vb2_i_b(:,:) = 0._wp ! used in the 1st update of agrif 1380 ENDIF 1381 #endif 1382 ENDIF 1383 ! 1384 ELSEIF( TRIM(cdrw) == 'WRITE' ) THEN ! Create restart file 1385 ! ! ------------------- 1386 IF(lwp) WRITE(numout,*) '---- ts_rst ----' 1370 1387 IF( lwxios ) CALL iom_swap( cwxios_context ) 1371 1388 CALL iom_rstput( kt, nitrst, numrow, 'ub2_b' , ub2_b (:,:), ldxios = lwxios ) … … 1482 1499 ! 1483 1500 ! ! read restart when needed 1484 IF( neuler /= 0 .AND. ln_bt_fw )CALL ts_rst( nit000, 'READ' )1501 CALL ts_rst( nit000, 'READ' ) 1485 1502 ! 1486 1503 IF( lwxios ) THEN
Note: See TracChangeset
for help on using the changeset viewer.