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 12950 for NEMO/branches/2020/dev_12905_xios_restart/src/OCE/ISF – NEMO

Ignore:
Timestamp:
2020-05-19T12:53:16+02:00 (4 years ago)
Author:
andmirek
Message:

Ticket #2462: new XIOS restart read/write interfaces

Location:
NEMO/branches/2020/dev_12905_xios_restart/src/OCE/ISF
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_12905_xios_restart/src/OCE/ISF/isfcav.F90

    r12914 r12950  
    187187      !================ 
    188188      ! 
    189       IF( lwxios ) THEN 
    190          CALL iom_set_rstw_var_active('fwfisf_cav_b') 
    191          CALL iom_set_rstw_var_active('isf_hc_cav_b') 
    192          CALL iom_set_rstw_var_active('isf_sc_cav_b') 
    193       ENDIF 
    194       ! 
    195189      !================ 
    196190      ! 3: read restart 
  • NEMO/branches/2020/dev_12905_xios_restart/src/OCE/ISF/isfcpl.F90

    r12489 r12950  
    114114      e3t(:,:,:,Kbb)   = e3t(:,:,:,Kmm) 
    115115  
    116       ! prepare writing restart 
    117       IF( lwxios ) THEN 
    118          CALL iom_set_rstw_var_active('ssmask') 
    119          CALL iom_set_rstw_var_active('tmask') 
    120          CALL iom_set_rstw_var_active('e3t_n') 
    121          CALL iom_set_rstw_var_active('e3u_n') 
    122          CALL iom_set_rstw_var_active('e3v_n') 
    123       END IF 
    124       ! 
    125116   END SUBROUTINE isfcpl_init 
    126117   !  
     
    166157      !!---------------------------------------------------------------------- 
    167158      ! 
     159      IF( lrxios ) CALL iom_swap( TRIM(crxios_context) ) 
    168160      CALL iom_get( numror, jpdom_autoglo, 'ssmask'  , zssmask_b, ldxios = lrxios   ) ! need to extrapolate T/S 
     161      IF( lrxios ) CALL iom_swap( TRIM(cxios_context) ) 
    169162 
    170163      ! compute new ssh if we open a full water column  
     
    245238      !!---------------------------------------------------------------------- 
    246239      !  
     240      IF( lrxios ) CALL iom_swap( TRIM(crxios_context) ) 
    247241      CALL iom_get( numror, jpdom_autoglo, 'tmask'  , ztmask_b, ldxios = lrxios   ) ! need to extrapolate T/S 
    248242      !CALL iom_get( numror, jpdom_autoglo, 'wmask'  , zwmask_b, ldxios = lrxios   ) ! need to extrapolate T/S 
    249243      !CALL iom_get( numror, jpdom_autoglo, 'gdepw_n', zdepw_b(:,:,:), ldxios = lrxios ) ! need to interpol vertical profile (vvl) 
     244      IF( lrxios ) CALL iom_swap( TRIM(cxios_context) ) 
    250245      ! 
    251246      !  
     
    391386      !!---------------------------------------------------------------------- 
    392387      ! 
     388      IF( lrxios ) CALL iom_swap( TRIM(crxios_context) ) 
    393389      CALL iom_get( numror, jpdom_autoglo, 'tmask'  , ztmask_b, ldxios = lrxios ) 
    394390      CALL iom_get( numror, jpdom_autoglo, 'e3u_n'  , ze3u_b  , ldxios = lrxios ) 
    395391      CALL iom_get( numror, jpdom_autoglo, 'e3v_n'  , ze3v_b  , ldxios = lrxios ) 
     392      IF( lrxios ) CALL iom_swap( TRIM(cxios_context) ) 
    396393      ! 
    397394      ! 1.0: compute horizontal volume flux divergence difference before-after coupling 
     
    495492 
    496493      ! get restart variable 
     494      IF( lrxios ) CALL iom_swap( TRIM(crxios_context) ) 
    497495      CALL iom_get( numror, jpdom_autoglo, 'tmask'  , ztmask_b(:,:,:), ldxios = lrxios   ) ! need to extrapolate T/S 
    498496      CALL iom_get( numror, jpdom_autoglo, 'e3t_n'  , ze3t_b(:,:,:)  , ldxios = lrxios ) 
    499497      CALL iom_get( numror, jpdom_autoglo, 'tn'     , zt_b(:,:,:)    , ldxios = lrxios ) 
    500498      CALL iom_get( numror, jpdom_autoglo, 'sn'     , zs_b(:,:,:)    , ldxios = lrxios ) 
     499      IF( lrxios ) CALL iom_swap( TRIM(cxios_context) ) 
    501500 
    502501      ! compute run length 
  • NEMO/branches/2020/dev_12905_xios_restart/src/OCE/ISF/isfrst.F90

    r11931 r12950  
    5353      IF( iom_varid( numror, cfwf_b, ldstop = .FALSE. ) > 0 ) THEN 
    5454         IF(lwp) WRITE(numout,*) '          nit000-1 isf tracer content forcing fields read in the restart file' 
     55         IF( lrxios ) CALL iom_swap( TRIM(crxios_context) ) 
    5556         CALL iom_get( numror, jpdom_autoglo, cfwf_b, pfwf_b(:,:)        , ldxios = lrxios )   ! before ice shelf melt 
    5657         CALL iom_get( numror, jpdom_autoglo, chc_b , ptsc_b (:,:,jp_tem), ldxios = lrxios )   ! before ice shelf heat flux 
    5758         CALL iom_get( numror, jpdom_autoglo, csc_b , ptsc_b (:,:,jp_sal), ldxios = lrxios )   ! before ice shelf heat flux 
     59         IF( lrxios ) CALL iom_swap( TRIM(cxios_context) ) 
    5860      ELSE 
    5961         pfwf_b(:,:)   = pfwf(:,:) 
     
    6163      ENDIF 
    6264      ! 
    63       IF( lwxios ) THEN 
    64          CALL iom_set_rstw_var_active(TRIM(chc_b )) 
    65          CALL iom_set_rstw_var_active(TRIM(csc_b )) 
    66          CALL iom_set_rstw_var_active(TRIM(cfwf_b)) 
    67       ENDIF 
    68  
    6965   END SUBROUTINE isfrst_read 
    7066   !  
Note: See TracChangeset for help on using the changeset viewer.