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 15136 – NEMO

Changeset 15136


Ignore:
Timestamp:
2021-07-23T12:07:28+02:00 (3 years ago)
Author:
smasson
Message:

trunk: SWE passes sette tests in debug

Location:
NEMO/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/OCE/DIA/diawri.F90

    r15087 r15136  
    786786         CALL histdef( nid_T, "soshfldo", "Shortwave Radiation"                , "W/m2"   ,   &  ! qsr 
    787787            &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
    788          CALL histdef( nid_T, "somixhgt", "Turbocline Depth"                   , "m"      ,   &  ! hmld 
    789             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
    790          CALL histdef( nid_T, "somxl010", "Mixed Layer Depth 0.01"             , "m"      ,   &  ! hmlp 
    791             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     788         IF( ALLOCATED(hmld) ) THEN   ! zdf_mxl not called by SWE 
     789            CALL histdef( nid_T, "somixhgt", "Turbocline Depth"                   , "m"      ,   &  ! hmld 
     790               &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     791            CALL histdef( nid_T, "somxl010", "Mixed Layer Depth 0.01"             , "m"      ,   &  ! hmlp 
     792               &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     793         ENDIF 
    792794         CALL histdef( nid_T, "soicecov", "Ice fraction"                       , "[0,1]"  ,   &  ! fr_i 
    793795            &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     
    972974      CALL histwrite( nid_T, "sohefldo", it, qns + qsr     , ndim_hT, ndex_hT )   ! total heat flux 
    973975      CALL histwrite( nid_T, "soshfldo", it, qsr           , ndim_hT, ndex_hT )   ! solar heat flux 
    974       CALL histwrite( nid_T, "somixhgt", it, hmld          , ndim_hT, ndex_hT )   ! turbocline depth 
    975       CALL histwrite( nid_T, "somxl010", it, hmlp          , ndim_hT, ndex_hT )   ! mixed layer depth 
     976      IF( ALLOCATED(hmld) ) THEN   ! zdf_mxl not called by SWE 
     977         CALL histwrite( nid_T, "somixhgt", it, hmld          , ndim_hT, ndex_hT )   ! turbocline depth 
     978         CALL histwrite( nid_T, "somxl010", it, hmlp          , ndim_hT, ndex_hT )   ! mixed layer depth 
     979      ENDIF 
    976980      CALL histwrite( nid_T, "soicecov", it, fr_i          , ndim_hT, ndex_hT )   ! ice fraction    
    977981      CALL histwrite( nid_T, "sowindsp", it, wndm          , ndim_hT, ndex_hT )   ! wind speed    
  • NEMO/trunk/src/OCE/IOM/restart.F90

    r14834 r15136  
    165165         CALL iom_rstput( kt, nitrst, numrow, 'ub'     , uu(:,:,:       ,Kbb) ) 
    166166         CALL iom_rstput( kt, nitrst, numrow, 'vb'     , vv(:,:,:       ,Kbb) ) 
    167          IF( .NOT.lk_SWE ) THEN 
    168             CALL iom_rstput( kt, nitrst, numrow, 'tb'  , ts(:,:,:,jp_tem,Kbb) ) 
    169             CALL iom_rstput( kt, nitrst, numrow, 'sb'  , ts(:,:,:,jp_sal,Kbb) ) 
    170          ENDIF 
     167         CALL iom_rstput( kt, nitrst, numrow, 'tb'  , ts(:,:,:,jp_tem,Kbb) ) 
     168         CALL iom_rstput( kt, nitrst, numrow, 'sb'  , ts(:,:,:,jp_sal,Kbb) ) 
    171169         ! 
    172170#if ! defined key_RK3 
     
    174172         CALL iom_rstput( kt, nitrst, numrow, 'un'     , uu(:,:,:       ,Kmm) ) 
    175173         CALL iom_rstput( kt, nitrst, numrow, 'vn'     , vv(:,:,:       ,Kmm) ) 
    176          IF( .NOT.lk_SWE ) THEN 
    177             CALL iom_rstput( kt, nitrst, numrow, 'tn'  , ts(:,:,:,jp_tem,Kmm) ) 
    178             CALL iom_rstput( kt, nitrst, numrow, 'sn'  , ts(:,:,:,jp_sal,Kmm) ) 
    179             CALL iom_rstput( kt, nitrst, numrow, 'rhop', rhop                 ) 
    180          ENDIF 
     174         CALL iom_rstput( kt, nitrst, numrow, 'tn'  , ts(:,:,:,jp_tem,Kmm) ) 
     175         CALL iom_rstput( kt, nitrst, numrow, 'sn'  , ts(:,:,:,jp_sal,Kmm) ) 
     176         IF( .NOT.lk_SWE )   CALL iom_rstput( kt, nitrst, numrow, 'rhop', rhop ) 
    181177#endif 
    182178      ENDIF 
     
    288284      CALL iom_get( numror, jpdom_auto, 'ub'   , uu(:,:,:       ,Kbb), cd_type = 'U', psgn = -1._wp ) 
    289285      CALL iom_get( numror, jpdom_auto, 'vb'   , vv(:,:,:       ,Kbb), cd_type = 'V', psgn = -1._wp ) 
    290       IF( .NOT.lk_SWE ) THEN 
    291          CALL iom_get( numror, jpdom_auto, 'tb', ts(:,:,:,jp_tem,Kbb) ) 
    292          CALL iom_get( numror, jpdom_auto, 'sb', ts(:,:,:,jp_sal,Kbb) ) 
    293       ENDIF 
     286      CALL iom_get( numror, jpdom_auto, 'tb', ts(:,:,:,jp_tem,Kbb) ) 
     287      CALL iom_get( numror, jpdom_auto, 'sb', ts(:,:,:,jp_sal,Kbb) ) 
    294288#else 
    295289      !                             !*  Read Kmm fields   (MLF only) 
     
    297291      CALL iom_get( numror, jpdom_auto, 'un'   , uu(:,:,:       ,Kmm), cd_type = 'U', psgn = -1._wp ) 
    298292      CALL iom_get( numror, jpdom_auto, 'vn'   , vv(:,:,:       ,Kmm), cd_type = 'V', psgn = -1._wp ) 
    299       IF( .NOT.lk_SWE ) THEN 
    300          CALL iom_get( numror, jpdom_auto, 'tn', ts(:,:,:,jp_tem,Kmm) ) 
    301          CALL iom_get( numror, jpdom_auto, 'sn', ts(:,:,:,jp_sal,Kmm) ) 
    302       ENDIF 
     293      CALL iom_get( numror, jpdom_auto, 'tn', ts(:,:,:,jp_tem,Kmm) ) 
     294      CALL iom_get( numror, jpdom_auto, 'sn', ts(:,:,:,jp_sal,Kmm) ) 
    303295      ! 
    304296      IF( l_1st_euler ) THEN        !*  Euler restart   (MLF only) 
     
    306298         uu(:,:,:  ,Kbb) = uu(:,:,:  ,Kmm)         ! all before fields set to now values 
    307299         vv(:,:,:  ,Kbb) = vv(:,:,:  ,Kmm) 
    308          IF( .NOT.lk_SWE ) ts(:,:,:,:,Kbb) = ts(:,:,:,:,Kmm) 
     300         ts(:,:,:,:,Kbb) = ts(:,:,:,:,Kmm) 
    309301         ! 
    310302      ELSE                          !* Leap frog restart   (MLF only) 
     
    312304         CALL iom_get( numror, jpdom_auto, 'ub'   , uu(:,:,:       ,Kbb), cd_type = 'U', psgn = -1._wp ) 
    313305         CALL iom_get( numror, jpdom_auto, 'vb'   , vv(:,:,:       ,Kbb), cd_type = 'V', psgn = -1._wp ) 
    314          IF( .NOT.lk_SWE ) THEN 
    315             CALL iom_get( numror, jpdom_auto, 'tb', ts(:,:,:,jp_tem,Kbb) ) 
    316             CALL iom_get( numror, jpdom_auto, 'sb', ts(:,:,:,jp_sal,Kbb) ) 
    317          ENDIF 
     306         CALL iom_get( numror, jpdom_auto, 'tb', ts(:,:,:,jp_tem,Kbb) ) 
     307         CALL iom_get( numror, jpdom_auto, 'sb', ts(:,:,:,jp_sal,Kbb) ) 
    318308      ENDIF 
    319309#endif 
  • NEMO/trunk/src/OCE/TRA/eosbn2.F90

    r15053 r15136  
    10811081         ! 
    10821082         zt  = ctmp   (ji,jj) * z1_T0 
    1083          zs  = SQRT( ABS( psal(ji,jj) + zdeltaS ) * r1_S0 ) 
     1083         zs  = SQRT( ABS( psal(ji,jj) + zdeltaS ) * z1_S0 ) 
    10841084         ztm = tmask(ji,jj,1) 
    10851085         ! 
  • NEMO/trunk/src/SWE/nemogcm.F90

    r14834 r15136  
    2222   USE bdyini         ! open boundary cond. setting       (bdy_init routine) 
    2323   USE istate         ! initial state setting          (istate_init routine) 
     24   USE wet_dry , ONLY : ln_wd_il, ln_wd_dl, ln_wd_dl_bc   ! switch off wetting and drying 
     25   USE isf_oce , ONLY : ln_isf           ! ice shelf 
    2426   USE trd_oce , ONLY : l_trddyn         ! dynamical trend logical 
    2527#if defined key_RK3 
     
    297299      ! 
    298300                           CALL     phy_cst         ! Physical constants 
     301                           ln_wd_il = .FALSE.   ;   ln_wd_dl = .FALSE.   ;   ln_wd_dl_bc = .FALSE.  ! No wetting and drying 
    299302      ! 
    300303      !                                             ! SWE: Set rho0 and associated variables (eosbn2 not used) 
     
    317320 
    318321      !                                      ! Ocean physics                                     
     322      !                                         ! Vertical physics 
     323                           ln_zdfddm = .FALSE.   ;   ln_zad_Aimp = .FALSE.   ;   ln_zdfosm = .FALSE.   ! used in diawri 
     324                           avt(:,:,:) = 0._wp    ;   avm(:,:,:) = 0._wp                                ! used in diawri 
    319325      !                                         ! Lateral physics 
    320326                           CALL ldf_dyn_init      ! Lateral ocean momentum physics 
     
    324330                           CALL dyn_vor_init         ! vorticity term including Coriolis 
    325331                           CALL dyn_ldf_init         ! lateral mixing 
     332 
     333      !                                      ! Icebergs 
     334                           ln_icebergs = .false. 
     335      !                                      ! ice shelf 
     336                           ln_isf = .false. 
    326337 
    327338      !                                      ! Diagnostics 
  • NEMO/trunk/tests/SWG/MY_SRC/usrdef_sbc.F90

    r15033 r15136  
    7272      sfx (:,:) = 0._wp 
    7373      qns (:,:) = 0._wp 
     74      qsr (:,:) = 0._wp 
    7475 
    7576      ! ---------------------------- ! 
Note: See TracChangeset for help on using the changeset viewer.