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 13899 for NEMO/branches/2020/tickets_icb_1900/src/OCE/DIA/diaar5.F90 – NEMO

Ignore:
Timestamp:
2020-11-27T17:26:33+01:00 (4 years ago)
Author:
mathiot
Message:

ticket #1900: update branch to trunk and add ICB test case

Location:
NEMO/branches/2020/tickets_icb_1900
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/tickets_icb_1900

    • Property svn:externals
      •  

        old new  
        22^/utils/build/makenemo@HEAD   makenemo 
        33^/utils/build/mk@HEAD         mk 
        4 ^/utils/tools/@HEAD           tools 
         4^/utils/tools@HEAD            tools 
        55^/vendors/AGRIF/dev_r12970_AGRIF_CMEMS      ext/AGRIF 
        66^/vendors/FCM@HEAD            ext/FCM 
         
        88 
        99# SETTE 
        10 ^/utils/CI/sette@12931        sette 
         10^/utils/CI/sette@13559        sette 
  • NEMO/branches/2020/tickets_icb_1900/src/OCE/DIA/diaar5.F90

    r13237 r13899  
    110110      ! 
    111111      IF( iom_use( 'e3tb' ) )  THEN    ! bottom layer thickness 
    112          DO_2D_11_11 
     112         DO_2D( 1, 1, 1, 1 ) 
    113113            ikb = mbkt(ji,jj) 
    114114            z2d(ji,jj) = e3t(ji,jj,ikb,Kmm) 
     
    144144         IF( ln_linssh ) THEN 
    145145            IF( ln_isfcav ) THEN 
    146                DO ji = 1, jpi 
    147                   DO jj = 1, jpj 
    148                      iks = mikt(ji,jj) 
    149                      zbotpres(ji,jj) = zbotpres(ji,jj) + ssh(ji,jj,Kmm) * zrhd(ji,jj,iks) + riceload(ji,jj) 
    150                   END DO 
    151                END DO 
     146               DO_2D( nn_hls, nn_hls, nn_hls, nn_hls ) 
     147                  iks = mikt(ji,jj) 
     148                  zbotpres(ji,jj) = zbotpres(ji,jj) + ssh(ji,jj,Kmm) * zrhd(ji,jj,iks) + riceload(ji,jj) 
     149               END_2D 
    152150            ELSE 
    153151               zbotpres(:,:) = zbotpres(:,:) + ssh(:,:,Kmm) * zrhd(:,:,1) 
     
    195193          !                                         ! Mean density anomalie, temperature and salinity 
    196194          ztsn(:,:,:,:) = 0._wp                    ! ztsn(:,:,1,jp_tem/sal) is used here as 2D Workspace for temperature & salinity 
    197           DO_3D_11_11( 1, jpkm1 ) 
     195          DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    198196             zztmp = e1e2t(ji,jj) * e3t(ji,jj,jk,Kmm) 
    199197             ztsn(ji,jj,1,jp_tem) = ztsn(ji,jj,1,jp_tem) + zztmp * ts(ji,jj,jk,jp_tem,Kmm) 
     
    255253             IF( iom_use( 'tosmint_pot') ) THEN 
    256254               z2d(:,:) = 0._wp 
    257                DO_3D_11_11( 1, jpkm1 ) 
     255               DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    258256                  z2d(ji,jj) = z2d(ji,jj) + rho0 * e3t(ji,jj,jk,Kmm) *  ztpot(ji,jj,jk) 
    259257               END_3D 
     
    276274         zpe(:,:) = 0._wp 
    277275         IF( ln_zdfddm ) THEN 
    278             DO_3D_11_11( 2, jpk ) 
     276            DO_3D( 1, 1, 1, 1, 2, jpk ) 
    279277               IF( rn2(ji,jj,jk) > 0._wp ) THEN 
    280278                  zrw = ( gdept(ji,jj,jk,Kmm) - gdepw(ji,jj,jk,Kmm) ) / e3w(ji,jj,jk,Kmm) 
     
    289287            END_3D 
    290288          ELSE 
    291             DO_3D_11_11( 1, jpk ) 
     289            DO_3D( 1, 1, 1, 1, 1, jpk ) 
    292290               zpe(ji,jj) = zpe(ji,jj) + avt(ji,jj,jk) * MIN(0._wp,rn2(ji,jj,jk)) * rho0 * e3w(ji,jj,jk,Kmm) 
    293291            END_3D 
     
    324322     
    325323      z2d(:,:) = puflx(:,:,1)  
    326       DO_3D_00_00( 1, jpkm1 ) 
     324      DO_3D( 0, 0, 0, 0, 1, jpkm1 ) 
    327325         z2d(ji,jj) = z2d(ji,jj) + puflx(ji,jj,jk)  
    328326      END_3D 
     
    338336       ! 
    339337       z2d(:,:) = pvflx(:,:,1)  
    340        DO_3D_00_00( 1, jpkm1 ) 
     338       DO_3D( 0, 0, 0, 0, 1, jpkm1 ) 
    341339          z2d(ji,jj) = z2d(ji,jj) + pvflx(ji,jj,jk)  
    342340       END_3D 
     
    385383         zvol0 (:,:) = 0._wp 
    386384         thick0(:,:) = 0._wp 
    387          DO_3D_11_11( 1, jpkm1 ) 
     385         DO_3D( 1, 1, 1, 1, 1, jpkm1 )   ! interpolation of salinity at the last ocean level (i.e. the partial step) 
    388386            idep = tmask(ji,jj,jk) * e3t_0(ji,jj,jk) 
    389387            zvol0 (ji,jj) = zvol0 (ji,jj) +  idep * e1e2t(ji,jj) 
     
    396394            ALLOCATE( zsaldta(jpi,jpj,jpk,jpts) ) 
    397395            CALL iom_open ( 'sali_ref_clim_monthly', inum ) 
    398             CALL iom_get  ( inum, jpdom_data, 'vosaline' , zsaldta(:,:,:,1), 1  ) 
    399             CALL iom_get  ( inum, jpdom_data, 'vosaline' , zsaldta(:,:,:,2), 12 ) 
     396            CALL iom_get  ( inum, jpdom_global, 'vosaline' , zsaldta(:,:,:,1), 1  ) 
     397            CALL iom_get  ( inum, jpdom_global, 'vosaline' , zsaldta(:,:,:,2), 12 ) 
    400398            CALL iom_close( inum ) 
    401399 
     
    403401            sn0(:,:,:) = sn0(:,:,:) * tmask(:,:,:) 
    404402            IF( ln_zps ) THEN               ! z-coord. partial steps 
    405                DO_2D_11_11 
     403               DO_2D( 1, 1, 1, 1 )          ! interpolation of salinity at the last ocean level (i.e. the partial step) 
    406404                  ik = mbkt(ji,jj) 
    407405                  IF( ik > 1 ) THEN 
Note: See TracChangeset for help on using the changeset viewer.