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

Changeset 14681


Ignore:
Timestamp:
2021-04-08T11:14:01+02:00 (3 years ago)
Author:
francesca
Message:

DYN changes for halo 1 - halo 2 compatibility

Location:
NEMO/branches/2021/ticket2607_r14608_halo1_halo2_compatibility/src/OCE/DYN
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/ticket2607_r14608_halo1_halo2_compatibility/src/OCE/DYN/dynkeg.F90

    r13497 r14681  
    110110      CASE ( nkeg_HW )                          !--  Hollingsworth scheme  --! 
    111111         DO_3D( 0, 0, 0, 0, 1, jpkm1 ) 
     112            ! round brackets added to fix the order of floating point operations 
     113            ! needed to ensure halo 1 - halo 2 compatibility 
    112114            zu = 8._wp * ( puu(ji-1,jj  ,jk,Kmm) * puu(ji-1,jj  ,jk,Kmm)    & 
    113115               &         + puu(ji  ,jj  ,jk,Kmm) * puu(ji  ,jj  ,jk,Kmm) )  & 
    114                &   +     ( puu(ji-1,jj-1,jk,Kmm) + puu(ji-1,jj+1,jk,Kmm) ) * ( puu(ji-1,jj-1,jk,Kmm) + puu(ji-1,jj+1,jk,Kmm) )   & 
    115                &   +     ( puu(ji  ,jj-1,jk,Kmm) + puu(ji  ,jj+1,jk,Kmm) ) * ( puu(ji  ,jj-1,jk,Kmm) + puu(ji  ,jj+1,jk,Kmm) ) 
     116               &   +     ( ( puu(ji-1,jj-1,jk,Kmm) + puu(ji-1,jj+1,jk,Kmm) ) * ( puu(ji-1,jj-1,jk,Kmm) + puu(ji-1,jj+1,jk,Kmm) )   & 
     117               &   +       ( puu(ji  ,jj-1,jk,Kmm) + puu(ji  ,jj+1,jk,Kmm) ) * ( puu(ji  ,jj-1,jk,Kmm) + puu(ji  ,jj+1,jk,Kmm) )   & 
     118               &         )                                                               ! bracket for halo 1 - halo 2 compatibility 
    116119               ! 
    117120            zv = 8._wp * ( pvv(ji  ,jj-1,jk,Kmm) * pvv(ji  ,jj-1,jk,Kmm)    & 
    118121               &         + pvv(ji  ,jj  ,jk,Kmm) * pvv(ji  ,jj  ,jk,Kmm) )  & 
    119                &  +      ( pvv(ji-1,jj-1,jk,Kmm) + pvv(ji+1,jj-1,jk,Kmm) ) * ( pvv(ji-1,jj-1,jk,Kmm) + pvv(ji+1,jj-1,jk,Kmm) )   & 
    120                &  +      ( pvv(ji-1,jj  ,jk,Kmm) + pvv(ji+1,jj  ,jk,Kmm) ) * ( pvv(ji-1,jj  ,jk,Kmm) + pvv(ji+1,jj  ,jk,Kmm) ) 
     122               &  +      ( ( pvv(ji-1,jj-1,jk,Kmm) + pvv(ji+1,jj-1,jk,Kmm) ) * ( pvv(ji-1,jj-1,jk,Kmm) + pvv(ji+1,jj-1,jk,Kmm) )  & 
     123               &  +        ( pvv(ji-1,jj  ,jk,Kmm) + pvv(ji+1,jj  ,jk,Kmm) ) * ( pvv(ji-1,jj  ,jk,Kmm) + pvv(ji+1,jj  ,jk,Kmm) )  &  
     124               &         )                                                               ! bracket for halo 1 - halo 2 compatibility 
    121125            zhke(ji,jj,jk) = r1_48 * ( zv + zu ) 
    122126         END_3D 
  • NEMO/branches/2021/ticket2607_r14608_halo1_halo2_compatibility/src/OCE/DYN/dynvor.F90

    r14433 r14681  
    678678         CASE ( np_CRV )                           !* Coriolis + relative vorticity 
    679679            DO_2D( 1, 0, 1, 0 ) 
    680                zwz(ji,jj,jk) = (  ff_f(ji,jj) + (  e2v(ji+1,jj  ) * pv(ji+1,jj,jk) - e2v(ji,jj) * pv(ji,jj,jk)      & 
    681                   &                              - e1u(ji  ,jj+1) * pu(ji,jj+1,jk) + e1u(ji,jj) * pu(ji,jj,jk)  )   & 
    682                   &                           * r1_e1e2f(ji,jj)   ) * z1_e3f(ji,jj) 
     680               ! round brackets added to fix the order of floating point operations 
     681               ! needed to ensure halo 1 - halo 2 compatibility 
     682               zwz(ji,jj,jk) = (  ff_f(ji,jj) + ( ( e2v(ji+1,jj  ) * pv(ji+1,jj,jk) - e2v(ji,jj) * pv(ji,jj,jk)      & 
     683                  &                               )                                                                  & ! bracket for halo 1 - halo 2 compatibility 
     684                  &                             - ( e1u(ji  ,jj+1) * pu(ji,jj+1,jk) - e1u(ji,jj) * pu(ji,jj,jk)      &  
     685                  &                               )                                                                  & ! bracket for halo 1 - halo 2 compatibility 
     686                  &                             ) * r1_e1e2f(ji,jj)   ) * z1_e3f(ji,jj) 
    683687            END_2D 
    684688            IF( ln_dynvor_msk ) THEN                     ! mask the relative vorticity 
Note: See TracChangeset for help on using the changeset viewer.