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

Changeset 14787


Ignore:
Timestamp:
2021-05-05T11:35:40+02:00 (3 years ago)
Author:
hadcv
Message:

#2600: Clean up part 2- remove/modify comments & remove bug fixes to be committed separately

Location:
NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE
Files:
27 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DIA/diaptr.F90

    r14780 r14787  
    317317         ENDIF 
    318318         ! 
    319          ! TODO: [tiling] NOT TESTED- hangs on iom_get_var 
    320319         IF( iom_use( 'uocetr_vsum_cumul' ) ) THEN 
    321320            CALL iom_get_var(  'uocetr_vsum_op', z2d ) ! get uocetr_vsum_op from xml 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DOM/domtile.F90

    r14780 r14787  
    160160      ktej = ntej_a(ktile) 
    161161 
    162       ! Calculate the modifying factor on DO loop bounds (1 = do not work on halo of a tile that has already been processed) 
     162      ! Calculate the modifying factor on DO loop bounds (1 = do not work on points that have already been processed by a neighbouring tile) 
    163163      nthl = 0 ; nthr = 0 ; nthb = 0 ; ntht = 0 
    164164      iitile = Ni_0 / nn_ltile_i 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/divhor.F90

    r14765 r14787  
    9797      !  
    9898#endif 
    99       ! WED025 + isomip true  
    10099      IF( ln_isf )                      CALL isf_hdiv( kt, Kmm, hdiv )           !==  ice shelf         ==!   (update hdiv field) 
    101100      ! 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynadv_ubs.F90

    r14780 r14787  
    112112         END_2D 
    113113         !             
    114          DO_2D( nn_hls-1, nn_hls-1, nn_hls-1, nn_hls-1 )                       ! laplacia 
     114         DO_2D( nn_hls-1, nn_hls-1, nn_hls-1, nn_hls-1 )                       ! laplacian 
    115115            ! round brackets added to fix the order of floating point operations 
    116116            ! needed to ensure halo 1 - halo 2 compatibility 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynatf.F90

    r14765 r14787  
    285285      ENDIF ! .NOT. l_1st_euler 
    286286      ! 
    287       ! NOTE: [tiling] this is needed for dyn_ldf_blp to be restartable. dyn_ldf_blp uses uu/vv(Kbb) to calculate z[uv]lap. With nn_hls=1 lbc_lnk is called on z[uv]lap, with nn_hls=2 the calculation is explicit. Restart uses iom_get to read uu/vv(Kbb) & includes an lbc_lnk. nn_hls=2 is not restartable because there is no lbc_lnk on uu/vv(Kbb) or z[uv]lap. 
     287      ! This is needed for dyn_ldf_blp to be restartable 
    288288      IF( nn_hls == 2 ) CALL lbc_lnk( 'dynatf', puu(:,:,:,Kmm), 'U', -1.0_wp, pvv(:,:,:,Kmm), 'V', -1.0_wp ) 
    289289      ! Set "now" and "before" barotropic velocities for next time step: 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynatf_qco.F90

    r14764 r14787  
    195195      ENDIF ! .NOT. l_1st_euler 
    196196      ! 
    197       ! NOTE: [tiling] this is needed for dyn_ldf_blp to be restartable; see equivalent call in dynatf.F90 
     197      ! This is needed for dyn_ldf_blp to be restartable 
    198198      IF( nn_hls == 2 ) CALL lbc_lnk( 'dynatfqco', puu(:,:,:,Kmm), 'U', -1.0_wp, pvv(:,:,:,Kmm), 'V', -1.0_wp ) 
    199199 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynhpg.F90

    r14780 r14787  
    120120      CASE ( np_djc ) 
    121121             ! [ comm_cleanup ] : it should not be needed but the removal/shift of this lbc_lnk results in a seg_fault error 
    122              ! NOTE: [tiling] to check if still needed 
     122             ! TODO: [tiling] to check if still needed 
    123123!#if defined key_qco 
    124124!             IF (nn_hls==2) CALL lbc_lnk( 'dynhpg', r3t(:,:,Kmm), 'T', 1.) 
     
    801801      zdzy  (:,:,:) = 0._wp 
    802802 
    803       ! NOTE: [tiling] reorder zdzx/zdzy to avoid leading negation operator (may change order of operations) 
    804803      DO_3D( nn_hls-1, nn_hls-1, nn_hls-1, nn_hls-1, 1, jpkm1 ) 
    805804         zdrhox(ji,jj,jk) = rhd  (ji+1,jj  ,jk) - rhd  (ji  ,jj  ,jk) 
     
    815814      !------------------------------------------------------------------------- 
    816815 
    817       ! NOTE: [tiling] have refactored harmonic averages so that zep applies to denominator rather than numerator. This changes results, but I think this is the correct approach? 
    818816      DO_3D( 0, 1, 0, 1, 1, jpkm1 ) 
    819817         cffu = MAX( 2._wp * zdrhox(ji-1,jj,jk) * zdrhox(ji,jj,jk), 0._wp ) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynldf_iso.F90

    r14765 r14787  
    129129!!gm bug is dyn_ldf_iso called before tra_ldf_iso ....   <<<<<===== TO BE CHECKED 
    130130      ! s-coordinate: Iso-level diffusion on momentum but not on tracer 
    131       ! TODO: [tiling] NOT TESTED- requires ln_sco to be called with ln_dynldf_hor 
    132131      IF( ln_dynldf_hor .AND. ln_traldf_iso ) THEN 
    133132         ! 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynvor.F90

    r14765 r14787  
    162162         CASE( np_ENT )                        !* energy conserving scheme  (T-pts) 
    163163                             CALL vor_enT( kt, Kmm, ntot, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! total vorticity trend 
    164             ! TODO: [tiling] NOT TESTED- requires waves 
    165164            IF( ln_stcor .AND. .NOT. ln_vortex_force )  THEN 
    166165                             CALL vor_enT( kt, Kmm, ncor, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend 
    167             ! TODO: [tiling] NOT TESTED- requires waves 
    168166            ELSE IF( ln_stcor .AND. ln_vortex_force )   THEN 
    169167                             CALL vor_enT( kt, Kmm, ntot, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend and vortex force 
     
    171169         CASE( np_EET )                        !* energy conserving scheme (een scheme using e3t) 
    172170                             CALL vor_eeT( kt, Kmm, ntot, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! total vorticity trend 
    173             ! TODO: [tiling] NOT TESTED- requires waves 
    174171            IF( ln_stcor .AND. .NOT. ln_vortex_force )  THEN 
    175172                             CALL vor_eeT( kt, Kmm, ncor, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend 
    176             ! TODO: [tiling] NOT TESTED- requires waves 
    177173            ELSE IF( ln_stcor .AND. ln_vortex_force )   THEN 
    178174                             CALL vor_eeT( kt, Kmm, ntot, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend and vortex force 
     
    180176         CASE( np_ENE )                        !* energy conserving scheme 
    181177                             CALL vor_ene( kt, Kmm, ntot, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! total vorticity trend 
    182             ! TODO: [tiling] NOT TESTED- requires waves 
    183178            IF( ln_stcor .AND. .NOT. ln_vortex_force )  THEN 
    184179                             CALL vor_ene( kt, Kmm, ncor, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend 
    185             ! TODO: [tiling] NOT TESTED- requires waves 
    186180            ELSE IF( ln_stcor .AND. ln_vortex_force )   THEN 
    187181                             CALL vor_ene( kt, Kmm, ntot, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend and vortex force 
     
    190184                             CALL vor_ens( kt, Kmm, ntot, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )  ! total vorticity trend 
    191185 
    192             ! TODO: [tiling] NOT TESTED- requires waves 
    193186            IF( ln_stcor .AND. .NOT. ln_vortex_force )  THEN 
    194187                             CALL vor_ens( kt, Kmm, ncor, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )  ! add the Stokes-Coriolis trend 
    195             ! TODO: [tiling] NOT TESTED- requires waves 
    196188            ELSE IF( ln_stcor .AND. ln_vortex_force )   THEN 
    197189                             CALL vor_ens( kt, Kmm, ntot, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )  ! add the Stokes-Coriolis trend and vortex force 
     
    200192                             CALL vor_ens( kt, Kmm, nrvm, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! relative vorticity or metric trend (ens) 
    201193                             CALL vor_ene( kt, Kmm, ncor, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! planetary vorticity trend (ene) 
    202             ! TODO: [tiling] NOT TESTED- requires waves 
    203194            IF( ln_stcor )        CALL vor_ene( kt, Kmm, ncor, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )        ! add the Stokes-Coriolis trend 
    204             ! TODO: [tiling] NOT TESTED- requires waves 
    205195            IF( ln_vortex_force ) CALL vor_ens( kt, Kmm, nrvm, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add vortex force 
    206196         CASE( np_EEN )                        !* energy and enstrophy conserving scheme 
    207197                             CALL vor_een( kt, Kmm, ntot, puu(:,:,:,Kmm) , pvv(:,:,:,Kmm) , puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! total vorticity trend 
    208             ! TODO: [tiling] NOT TESTED- requires waves 
    209198            IF( ln_stcor .AND. .NOT. ln_vortex_force )  THEN 
    210199                             CALL vor_een( kt, Kmm, ncor, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend 
    211             ! TODO: [tiling] NOT TESTED- requires waves 
    212200            ELSE IF( ln_stcor .AND. ln_vortex_force )   THEN 
    213201                             CALL vor_een( kt, Kmm, ntot, usd, vsd, puu(:,:,:,Krhs), pvv(:,:,:,Krhs) )   ! add the Stokes-Coriolis trend and vortex force 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/dynzad.F90

    r14751 r14787  
    8181 
    8282      DO jk = 2, jpkm1                ! Vertical momentum advection at level w and u- and v- vertical 
    83          ! TODO: [tiling] NOT TESTED- requires waves 
    8483         IF( ln_vortex_force ) THEN       ! vertical fluxes 
    8584            DO_2D( 0, 1, 0, 1 ) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/DYN/sshwzv.F90

    r14765 r14787  
    189189         !                             ! Is it problematic to have a wrong vertical velocity in boundary cells? 
    190190         !                             ! Same question holds for hdiv. Perhaps just for security 
    191          ! NOTE: [tiling] have made these explicit loops to check whether 2nd halo points are needed (also makes it clearer that undefined hdiv values are not used) 
    192191         DO_3DS( 1, 1, 1, 1, jpkm1, 1, -1 )         ! integrate from the bottom the hor. divergence 
    193192            ! computation of w 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/OBS/diaobs.F90

    r14752 r14787  
    9999   CHARACTER(len=8), PUBLIC, DIMENSION(:), ALLOCATABLE ::   cobstypesprof, cobstypessurf   !: Profile & surface obs types 
    100100 
    101 #  include "domzgr_substitute.h90" 
    102101   !!---------------------------------------------------------------------- 
    103102   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
     
    624623      INTEGER :: jtype             ! Data loop variable 
    625624      INTEGER :: jvar              ! Variable number 
    626       INTEGER :: ji, jj, jk        ! Loop counters 
     625      INTEGER :: ji, jj            ! Loop counters 
    627626      REAL(wp), DIMENSION(:,:,:,:), ALLOCATABLE :: & 
    628627         & zprofvar                ! Model values for variables in a prof ob 
     
    635634         & zglam,    &             ! Model longitudes for prof variables 
    636635         & zgphi                   ! Model latitudes for prof variables 
    637       REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: zdept, zdepw 
    638636 
    639637      !----------------------------------------------------------------------- 
     
    652650 
    653651      IF ( nproftypes > 0 ) THEN 
    654  
    655          ALLOCATE( zdept(jpi,jpj,jpk), zdepw(jpi,jpj,jpk) ) 
    656          DO jk = 1, jpk 
    657             zdept(:,:,jk) = gdept(:,:,jk,Kmm) 
    658             zdepw(:,:,jk) = gdepw(:,:,jk,Kmm) 
    659          END DO 
    660652 
    661653         DO jtype = 1, nproftypes 
     
    695687                  &               nit000, idaystp, jvar,                   & 
    696688                  &               zprofvar(:,:,:,jvar),                    & 
    697                   &               zdept(:,:,:), zdepw(:,:,:),      & 
     689                  &               gdept(:,:,:,Kmm), gdepw(:,:,:,Kmm),      & 
    698690                  &               zprofmask(:,:,:,jvar),                   & 
    699691                  &               zglam(:,:,jvar), zgphi(:,:,jvar),        & 
     
    705697 
    706698         END DO 
    707  
    708          DEALLOCATE( zdept, zdepw ) 
    709699 
    710700      ENDIF 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/OBS/obs_prep.F90

    r14752 r14787  
    3333   PUBLIC   calc_month_len   ! Calculate the number of days in the months of a year 
    3434 
    35 #  include "domzgr_substitute.h90" 
    3635   !!---------------------------------------------------------------------- 
    3736   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
     
    10751074         & gdepw_1d,      & 
    10761075         & gdepw_0,       &                        
    1077          & gdepw, r3t,    & 
     1076         & gdepw,         & 
    10781077         & gdept,         & 
    10791078         & ln_zco,        & 
     
    11291128         & zglam, &           ! Model longitude at grid points 
    11301129         & zgphi              ! Model latitude at grid points 
    1131       REAL(wp), DIMENSION(jpi,jpj,jpk) :: zdepw 
    11321130      INTEGER, DIMENSION(2,2,kprofno) :: & 
    11331131         & igrdi, &           ! Grid i,j 
     
    11881186      CALL obs_int_comm_2d( 2, 2, kprofno, kpi, kpj, igrdi, igrdj, plam, zglam ) 
    11891187      CALL obs_int_comm_2d( 2, 2, kprofno, kpi, kpj, igrdi, igrdj, pphi, zgphi ) 
    1190       DO jk = 1, jpk 
    1191          zdepw(:,:,jk) = gdepw(:,:,jk,Kmm) 
    1192       END DO 
    1193       CALL obs_int_comm_3d( 2, 2, kprofno, kpi, kpj, kpk, igrdi, igrdj, zdepw(:,:,:), zgdepw ) 
     1188      CALL obs_int_comm_3d( 2, 2, kprofno, kpi, kpj, kpk, igrdi, igrdj, gdepw(:,:,:,Kmm), & 
     1189        &                     zgdepw ) 
    11941190 
    11951191      DO jobs = 1, kprofno 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/SBC/sbcrnf.F90

    r14765 r14787  
    204204      zfact = 0.5_wp 
    205205      ! 
    206       ! TODO: [tiling] NOT TESTED- requires ln_rnf_depth 
    207206      IF( ln_rnf_depth .OR. ln_rnf_depth_ini ) THEN      !==   runoff distributed over several levels   ==! 
    208207         IF( ln_linssh ) THEN    !* constant volume case : just apply the runoff input flow 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/TRA/traadv.F90

    r14780 r14787  
    119119      IF( .NOT. lskip ) THEN 
    120120         !                                         !==  effective transport  ==! 
    121          ! TODO: [tiling] NOT TESTED- requires waves 
    122121         IF( ln_wave .AND. ln_sdw )  THEN 
    123122            DO_3D_OVR( nn_hls, nn_hls-1, nn_hls, nn_hls-1, 1, jpkm1 ) 
     
    134133         ENDIF 
    135134         ! 
    136          ! TODO: [tiling] NOT TESTED- requires ztilde 
    137135         IF( ln_vvl_ztilde .OR. ln_vvl_layer ) THEN                                ! add z-tilde and/or vvl corrections 
    138136            DO_3D_OVR( nn_hls, nn_hls-1, nn_hls, nn_hls-1, 1, jpkm1 ) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/TRA/traadv_qck.F90

    r14780 r14787  
    149149            zfd(ji,jj,jk) = pt(ji+1,jj,jk,jn,Kbb)        ! Downstream in the x-direction for the tracer 
    150150         END_3D 
    151          IF (nn_hls==1) CALL lbc_lnk( 'traadv_qck', zfd(:,:,:), 'T', 1.0_wp )   ! Lateral boundary conditions 
     151         IF (nn_hls==1) CALL lbc_lnk( 'traadv_qck', zfc(:,:,:), 'T', 1.0_wp , zfd(:,:,:), 'T', 1.0_wp )   ! Lateral boundary conditions 
    152152 
    153153         ! 
     
    239239         IF (nn_hls==1) CALL lbc_lnk( 'traadv_qck', zfc(:,:,:), 'T', 1.0_wp , zfd(:,:,:), 'T', 1.0_wp )   ! Lateral boundary conditions 
    240240 
    241          ! Correct zfd on northfold after lbc_lnk; see #2640 
    242          IF( nn_hls == 1 .AND. l_IdoNFold .AND. ntej == Nje0 ) THEN 
    243             DO jk = 1, jpkm1 
    244                WHERE( tmask_i(ntsi:ntei,ntej:jpj) == 0._wp ) zfd(ntsi:ntei,ntej:jpj,jk) = zfc(ntsi:ntei,ntej:jpj,jk) 
    245             END DO 
    246          ENDIF 
    247241         ! 
    248242         ! Horizontal advective fluxes 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/TRA/traatf.F90

    r14780 r14787  
    5353 
    5454   PUBLIC   tra_atf       ! routine called by step.F90 
    55  
    56 #if defined key_qco   ||   defined key_linssh 
    57    !!---------------------------------------------------------------------- 
    58    !!   'key_qco'                        Quasi-Eulerian vertical coordinate 
    59    !!       OR         EMPTY MODULE 
    60    !!   'key_linssh'                        Fix in time vertical coordinate 
    61    !!---------------------------------------------------------------------- 
    62 CONTAINS 
    63  
    64    SUBROUTINE tra_atf( kt, Kbb, Kmm, Kaa, pts ) 
    65       INTEGER                                  , INTENT(in   ) :: kt             ! ocean time-step index 
    66       INTEGER                                  , INTENT(in   ) :: Kbb, Kmm, Kaa  ! time level indices 
    67       REAL(wp), DIMENSION(jpi,jpj,jpk,jpts,jpt), INTENT(inout) :: pts            ! active tracers 
    68  
    69       WRITE(*,*) 'tra_atf: You should not have seen this print! error?', kt 
    70    END SUBROUTINE tra_atf 
    71  
    72 #else 
    73  
    7455   PUBLIC   tra_atf_fix   ! to be used in trcnxt 
    7556   PUBLIC   tra_atf_vvl   ! to be used in trcnxt 
     
    401382   END SUBROUTINE tra_atf_vvl 
    402383 
    403 #endif 
    404  
    405384   !!====================================================================== 
    406385END MODULE traatf 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/TRA/tradmp.F90

    r14752 r14787  
    5353   !! * Substitutions 
    5454#  include "do_loop_substitute.h90" 
    55 #  include "domzgr_substitute.h90" 
    5655   !!---------------------------------------------------------------------- 
    5756   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/TRA/traldf_triad.F90

    r14780 r14787  
    398398                        zaei_slp1 = aeiu(ji,jj,jk) * triadi_g(ji+1,jj,jk,0,kp) 
    399399                     ENDIF 
    400 !                     zftu(ji   ,jj,jk  ) = zftu(ji   ,jj,jk ) - ( zah * zdxt + (zah_slp - zaei_slp) * zdzt ) * zbu * ze1ur - ( zah * zdxt + (zah_slp1 - zaei_slp1) * zdzt_ip1 ) * zbu * ze1ur 
    401 !                     ztfw(ji+1,jj,jk+kp) = ztfw(ji+1,jj,jk+kp) - (zah_slp_ip1 + zaei_slp_ip1) * zdxt_ip1 * zbu_ip1 * ze3wr_ip1 - (zah_slp1 + zaei_slp1) * zdxt * zbu * ze3wr_ip1 
    402400                     ! round brackets added to fix the order of floating point operations 
    403401                     ! needed to ensure halo 1 - halo 2 compatibility 
     
    435433                        zaei_slp1 = aeiv(ji,jj,jk) * triadj_g(ji,jj+1,jk,0,kp) 
    436434                     ENDIF 
    437 !                     zftv(ji,jj  ,jk   ) = zftv(ji,jj  ,jk   ) - ( zah * zdyt + (zah_slp - zaei_slp) * zdzt ) * zbv * ze2vr - ( zah * zdyt + (zah_slp1 - zaei_slp1) * zdzt_jp1 ) * zbv * ze2vr 
    438 !                     ztfw(ji,jj+1,jk+kp) = ztfw(ji,jj+1,jk+kp) - ( zah_slp_jp1 + zaei_slp_jp1) * zdyt_jp1 * zbv_jp1 * ze3wr_jp1 - (zah_slp1 + zaei_slp1) * zdyt * zbv * ze3wr_jp1 
    439435                     ! round brackets added to fix the order of floating point operations 
    440436                     ! needed to ensure halo 1 - halo 2 compatibility 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/ZDF/zdfiwm.F90

    r14780 r14787  
    311311         IF( .NOT. l_istiled .OR. ntile == 1 ) zztmp = 0._wp                    ! Do only on the first tile 
    312312!!gm used of glosum 3D.... 
    313          DO_3D( nn_hls-1, nn_hls-1, nn_hls-1, nn_hls-1, 2, jpkm1 ) 
     313         DO_3D( 0, 0, 0, 0, 2, jpkm1 ) 
    314314            zztmp = zztmp + e3w(ji,jj,jk,Kmm) * e1e2t(ji,jj)   & 
    315315               &          * MAX( 0._wp, rn2(ji,jj,jk) ) * zav_wave(ji,jj,jk) * wmask(ji,jj,jk) * tmask_i(ji,jj) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/ZDF/zdfphy.F90

    r14780 r14787  
    286286      ENDIF 
    287287      ! 
    288 ! TODO: [tiling] NOT TESTED- requires SI3 and isfcav 
    289288#if defined key_si3 
    290289      IF ( ln_drgice_imp) THEN 
     
    301300#endif 
    302301      ! 
    303       ! NOTE: [tiling] zdf_mxl has been split into zdf_mxl (nmln, hmlp, hmlpt) and zdf_mxl_turb (hmld), which depend on rn2b and avt respectively. zdf_mxl has been moved here from below (which is now zdf_mxl_turb) because zdf_tke with nn_etau = 2 depends on nmln. The previous solution was to call zdf_mxl in zdf_tke_init, but rn2b is not yet calculated here (0 everywhere), so this specific option was not restartable and tiling changed the results. Furthermore, the MLD diagnostics sent from zdf_mxl were incorrect for the first timestep. This bug fix has therefore changed the results when using zdf_tke with nn_etau = 2. 
    304302      CALL zdf_mxl( kt, Kmm )                        !* mixed layer depth, and level 
    305303 
     
    360358      ! 
    361359      !                                         !* wave-induced mixing 
    362       ! TODO: [tiling] NOT TESTED- requires ln_wave and ln_sdw 
    363360      IF( ln_zdfswm )   CALL zdf_swm( kt, Kmm, avm, avt, avs )   ! surface  wave (Qiao et al. 2004) 
    364361      IF( ln_zdfiwm )   CALL zdf_iwm( kt, Kmm, avm, avt, avs )   ! internal wave (de Lavergne et al 2017) 
     
    366363#if defined key_agrif 
    367364      ! interpolation parent grid => child grid for avm_k ( ex : at west border: update column 1 and 2) 
    368       ! TODO: [tiling] NOT TESTED- requires AGRIF 
    369365      IF( .NOT. l_istiled .OR. ntile == nijtile ) THEN                       ! Do only on the last tile 
    370366         IF( l_zdfsh2 )   CALL Agrif_avm 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/ZDF/zdfric.F90

    r14765 r14787  
    5151   !! * Substitutions 
    5252#  include "do_loop_substitute.h90" 
    53 #  include "domzgr_substitute.h90" 
    5453   !!---------------------------------------------------------------------- 
    5554   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/ZDF/zdfsh2.F90

    r14765 r14787  
    6464      ! 
    6565      DO jk = 2, jpkm1                 !* Shear production at uw- and vw-points (energy conserving form) 
    66          ! TODO: [tiling] NOT TESTED- requires key_oasis3 
    6766         IF ( cpl_sdrftx .AND. ln_stshear )  THEN       ! Surface Stokes Drift available  ===>>>  shear + stokes drift contibution 
    6867            DO_2D( nn_hls, nn_hls-1, nn_hls, nn_hls-1 ) 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/ZDF/zdftke.F90

    r14765 r14787  
    287287         !                       !* Langmuir velocity scale 
    288288         ! 
    289          ! TODO: [tiling] NOT TESTED- requires key_oasis3 
    290289         IF ( cpl_sdrftx )  THEN       ! Surface Stokes Drift available 
    291290            !                                ! Craik-Leibovich velocity scale Wlc = ( u* u_s )^1/2    with u* = (taum/rho0)^1/2 
     
    403402      !                     !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    404403      ! 
    405       ! TODO: [tiling] NOT TESTED- requires key_oasis3 and waves 
    406404      IF ( cpl_phioc .and. ln_phioc )  THEN 
    407405         SELECT CASE (nn_bc_surf) ! Boundary Condition using surface TKE flux from waves 
     
    468466               &                                 * MAX( 0._wp, 1._wp - zice_fra(ji,jj) ) * wmask(ji,jj,jk) * tmask(ji,jj,1) 
    469467         END_2D 
    470       ! TODO: [tiling] NOT TESTED- requires ln_cpl 
    471468      ELSEIF( nn_etau == 3 ) THEN       !* penetration belox the mixed layer (HF variability) 
    472469         DO_3D_OVR( nn_hls-1, nn_hls-1, nn_hls-1, nn_hls-1, 2, jpkm1 ) 
     
    540537      zmxld(:,:,:)  = rmxl_min 
    541538      ! 
    542       ! TODO: [tiling] NOT TESTED- requires waves 
    543539      IF(ln_sdw .AND. ln_mxhsw) THEN 
    544540         zmxlm(:,:,1)= vkarmn * MAX ( 1.6 * hsw(:,:) , 0.02 )        ! surface mixing length = F(wave height) 
     
    556552            END_2D 
    557553#else 
    558             ! TODO: [tiling] NOT TESTED- requires sea ice 
    559554            SELECT CASE( nn_mxlice )             ! Type of scaling under sea-ice 
    560555            ! 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/do_loop_substitute.h90

    r14537 r14787  
    6060 
    6161#define DO_2D(L, R, B, T) DO jj = ntsj-(B), ntej+(T) ; DO ji = ntsi-(L), ntei+(R) 
    62 ! NOTE: This easily exceeds 132 characters. ifort compiles OK, but it is against the NEMO coding standard. 
    63 ! TODO: To consider alternatives (and revise name) 
    6462#define DO_2D_OVR(L, R, B, T) DO_2D(L-(L+R)*nthl, R-(R+L)*nthr, B-(B+T)*nthb, T-(T+B)*ntht) 
    6563#define A1Di(H) ntsi-H:ntei+H 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/step.F90

    r14780 r14787  
    182182      !  LATERAL  PHYSICS 
    183183      ! 
    184       IF( ln_zps .OR. l_ldfslp ) CALL eos( ts(:,:,:,:,Nbb), rhd, gdept_0(:,:,:) )               ! before in situ density 
     184      IF( l_ldfslp ) THEN                             ! slope of lateral mixing 
     185                         CALL eos( ts(:,:,:,:,Nbb), rhd, gdept_0(:,:,:) )               ! before in situ density 
    185186 
    186187      IF( ln_zps .AND. .NOT. ln_isfcav)                                    & 
     
    191192            &            CALL zps_hde_isf( kstp, Nnn, jpts, ts(:,:,:,:,Nbb), gtsu, gtsv, gtui, gtvi,  &  ! Partial steps for top cell (ISF) 
    192193            &                                          rhd, gru , grv , grui, grvi   )       ! of t, s, rd at the first ocean level 
    193  
    194       IF( l_ldfslp ) THEN                             ! slope of lateral mixing 
    195194         IF( ln_traldf_triad ) THEN 
    196195                         CALL ldf_slp_triad( kstp, Nbb, Nnn )             ! before slope for triad operator 
  • NEMO/branches/2021/dev_r14273_HPC-02_Daley_Tiling/src/OCE/stpmlf.F90

    r14780 r14787  
    185185      !  LATERAL  PHYSICS 
    186186      ! 
    187       IF( ln_zps .OR. l_ldfslp ) CALL eos( ts(:,:,:,:,Nbb), rhd, gdept_0(:,:,:) )               ! before in situ density 
     187      IF( l_ldfslp ) THEN                             ! slope of lateral mixing 
     188                         CALL eos( ts(:,:,:,:,Nbb), rhd, gdept_0(:,:,:) )               ! before in situ density 
    188189 
    189190      IF( ln_zps .AND. .NOT. ln_isfcav)                                    & 
     
    194195            &            CALL zps_hde_isf( kstp, Nnn, jpts, ts(:,:,:,:,Nbb), gtsu, gtsv, gtui, gtvi,  &  ! Partial steps for top cell (ISF) 
    195196            &                                          rhd, gru , grv , grui, grvi   )       ! of t, s, rd at the first ocean level 
    196  
    197       IF( l_ldfslp ) THEN                             ! slope of lateral mixing 
    198197         IF( ln_traldf_triad ) THEN 
    199198                         CALL ldf_slp_triad( kstp, Nbb, Nnn )             ! before slope for triad operator 
Note: See TracChangeset for help on using the changeset viewer.