New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 9367 for branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/DOM/daymod.F90 – NEMO

Ignore:
Timestamp:
2018-02-28T17:23:20+01:00 (6 years ago)
Author:
mathiot
Message:

Add restart read/write via XIOS capability (#1953 and #1962 and twiki: 2017WP/Met_Office-1_Mirek_XIOSread). WARNING: need to upgrade XIOS to r1296 to compile

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/DOM/daymod.F90

    r9124 r9367  
    143143      CALL day( nit000 ) 
    144144      ! 
     145      IF( lwxios ) THEN 
     146! define variables in restart file when writing with XIOS 
     147          CALL iom_set_rstw_var_active('kt') 
     148          CALL iom_set_rstw_var_active('ndastp') 
     149          CALL iom_set_rstw_var_active('adatrj') 
     150          CALL iom_set_rstw_var_active('ntime') 
     151      ENDIF 
     152 
    145153   END SUBROUTINE day_init 
    146154 
     
    318326         IF( iom_varid( numror, 'kt', ldstop = .FALSE. ) > 0 ) THEN 
    319327            ! Get Calendar informations 
    320             CALL iom_get( numror, 'kt', zkt )   ! last time-step of previous run 
     328            CALL iom_get( numror, 'kt', zkt, ldxios = lrxios )   ! last time-step of previous run 
    321329            IF(lwp) THEN 
    322330               WRITE(numout,*) ' *** Info read in restart : ' 
     
    337345            IF ( nrstdt == 2 ) THEN 
    338346               ! read the parameters corresponding to nit000 - 1 (last time step of previous run) 
    339                CALL iom_get( numror, 'ndastp', zndastp ) 
     347               CALL iom_get( numror, 'ndastp', zndastp, ldxios = lrxios ) 
    340348               ndastp = NINT( zndastp ) 
    341                CALL iom_get( numror, 'adatrj', adatrj ) 
    342           CALL iom_get( numror, 'ntime', ktime ) 
     349               CALL iom_get( numror, 'adatrj', adatrj , ldxios = lrxios ) 
     350          CALL iom_get( numror, 'ntime' , ktime  , ldxios = lrxios ) 
    343351          nn_time0=INT(ktime) 
    344352               ! calculate start time in hours and minutes 
     
    399407         ENDIF 
    400408         ! calendar control 
    401          CALL iom_rstput( kt, nitrst, numrow, 'kt'     , REAL( kt    , wp) )   ! time-step 
    402          CALL iom_rstput( kt, nitrst, numrow, 'ndastp' , REAL( ndastp, wp) )   ! date 
    403          CALL iom_rstput( kt, nitrst, numrow, 'adatrj' , adatrj            )   ! number of elapsed days since 
    404          !                                                                     ! the begining of the run [s] 
    405          CALL iom_rstput( kt, nitrst, numrow, 'ntime'  , REAL( nn_time0, wp) ) ! time 
     409         IF( lwxios ) CALL iom_swap(      cwxios_context          ) 
     410         CALL iom_rstput( kt, nitrst, numrow, 'kt'     , REAL( kt    , wp)  , ldxios = lwxios )   ! time-step 
     411         CALL iom_rstput( kt, nitrst, numrow, 'ndastp' , REAL( ndastp, wp)  , ldxios = lwxios )   ! date 
     412         CALL iom_rstput( kt, nitrst, numrow, 'adatrj' , adatrj             , ldxios = lwxios            )   ! number of elapsed days since 
     413         !                                                                                                   ! the begining of the run [s] 
     414         CALL iom_rstput( kt, nitrst, numrow, 'ntime'  , REAL( nn_time0, wp), ldxios = lwxios ) ! time 
     415         IF( lwxios ) CALL iom_swap(      cxios_context          ) 
    406416      ENDIF 
    407417      ! 
Note: See TracChangeset for help on using the changeset viewer.