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 8801 for branches/2017/dev_r8600_xios_read_write_v2/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90 – NEMO

Ignore:
Timestamp:
2017-11-23T16:52:17+01:00 (6 years ago)
Author:
andmirek
Message:

#1953 and #1962 merge dev_r8600_xios_read_write r8793

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_r8600_xios_read_write_v2/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90

    r8800 r8801  
    5353   USE timing         ! Timing 
    5454   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
     55   USE iom_def, ONLY : lwxios 
    5556#if defined key_agrif 
    5657   USE agrif_opa_interp 
    5758   USE agrif_opa_update 
    5859#endif 
    59    USE iom_def, ONLY : lxios_read 
     60   USE iom_def, ONLY : lrxios 
    6061 
    6162   IMPLICIT NONE 
     
    815816      CALL tke_rst( nit000, 'READ' )  !* read or initialize all required files 
    816817      ! 
     818      IF( lwxios ) THEN 
     819        CALL iom_set_rstw_var_active('en') 
     820        CALL iom_set_rstw_var_active('avt') 
     821        CALL iom_set_rstw_var_active('avm') 
     822        CALL iom_set_rstw_var_active('avmu') 
     823        CALL iom_set_rstw_var_active('avmv') 
     824        CALL iom_set_rstw_var_active('dissl') 
     825      ENDIF 
     826 
    817827   END SUBROUTINE zdf_tke_init 
    818828 
     
    846856           ! 
    847857           IF( id1 > 0 ) THEN                       ! 'en' exists 
    848               CALL iom_get( numror, jpdom_autoglo, 'en', en, ldxios = lxios_read ) 
     858              CALL iom_get( numror, jpdom_autoglo, 'en', en, ldxios = lrxios ) 
    849859              IF( MIN( id2, id3, id4, id5, id6 ) > 0 ) THEN        ! all required arrays exist 
    850                  CALL iom_get( numror, jpdom_autoglo, 'avt'  , avt, ldxios = lxios_read   ) 
    851                  CALL iom_get( numror, jpdom_autoglo, 'avm'  , avm, ldxios = lxios_read   ) 
    852                  CALL iom_get( numror, jpdom_autoglo, 'avmu' , avmu, ldxios = lxios_read  ) 
    853                  CALL iom_get( numror, jpdom_autoglo, 'avmv' , avmv, ldxios = lxios_read  ) 
    854                  CALL iom_get( numror, jpdom_autoglo, 'dissl', dissl, ldxios = lxios_read ) 
     860                 CALL iom_get( numror, jpdom_autoglo, 'avt'  , avt, ldxios = lrxios   ) 
     861                 CALL iom_get( numror, jpdom_autoglo, 'avm'  , avm, ldxios = lrxios   ) 
     862                 CALL iom_get( numror, jpdom_autoglo, 'avmu' , avmu, ldxios = lrxios  ) 
     863                 CALL iom_get( numror, jpdom_autoglo, 'avmv' , avmv, ldxios = lrxios  ) 
     864                 CALL iom_get( numror, jpdom_autoglo, 'dissl', dissl, ldxios = lrxios ) 
    855865              ELSE                                                 ! one at least array is missing 
    856866                 CALL tke_avn                                          ! compute avt, avm, avmu, avmv and dissl (approximation) 
     
    881891        !                                   ! ------------------- 
    882892        IF(lwp) WRITE(numout,*) '---- tke-rst ----' 
    883         CALL iom_rstput( kt, nitrst, numrow, 'en'   , en     ) 
    884         CALL iom_rstput( kt, nitrst, numrow, 'avt'  , avt_k  ) 
    885         CALL iom_rstput( kt, nitrst, numrow, 'avm'  , avm_k  ) 
    886         CALL iom_rstput( kt, nitrst, numrow, 'avmu' , avmu_k ) 
    887         CALL iom_rstput( kt, nitrst, numrow, 'avmv' , avmv_k ) 
    888         CALL iom_rstput( kt, nitrst, numrow, 'dissl', dissl  ) 
     893        IF( lwxios ) CALL iom_swap(      cwxios_context          ) 
     894        CALL iom_rstput( kt, nitrst, numrow, 'en'   , en    , ldxios = lwxios ) 
     895        CALL iom_rstput( kt, nitrst, numrow, 'avt'  , avt_k , ldxios = lwxios ) 
     896        CALL iom_rstput( kt, nitrst, numrow, 'avm'  , avm_k , ldxios = lwxios ) 
     897        CALL iom_rstput( kt, nitrst, numrow, 'avmu' , avmu_k, ldxios = lwxios ) 
     898        CALL iom_rstput( kt, nitrst, numrow, 'avmv' , avmv_k, ldxios = lwxios ) 
     899        CALL iom_rstput( kt, nitrst, numrow, 'dissl', dissl , ldxios = lwxios ) 
     900        IF( lwxios ) CALL iom_swap(      cxios_context          ) 
    889901        ! 
    890902     ENDIF 
Note: See TracChangeset for help on using the changeset viewer.