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 12353 for NEMO/branches/2019/dev_r11943_MERGE_2019/src/ABL – NEMO

Ignore:
Timestamp:
2020-01-29T17:15:37+01:00 (4 years ago)
Author:
acc
Message:

Branch 2019/dev_r11943_MERGE_2019. Additions to the do loop macro implementation: converted a few loops previously missed because they used jpi-1 instead of jpim1 etc.; changed internal macro names in do_loop_substitute.h90 to strings that are much more unlikely to appear in any future code elsewhere and removed the key_vectopt_loop option (and all related code) since the do loop macros have suppressed this option. These changes have been fully SETTE-tested and this branch should now be ready to go back to the trunk.

Location:
NEMO/branches/2019/dev_r11943_MERGE_2019/src/ABL
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11943_MERGE_2019/src/ABL/ablmod.F90

    r12340 r12353  
    3232   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) ::   ustar2 
    3333   !! * Substitutions 
    34 #  include "vectopt_loop_substitute.h90" 
    3534#  include "do_loop_substitute.h90" 
    3635 
     
    10021001      smth_b = 1._wp / 4._wp 
    10031002      ! 
    1004       DO jj=1,jpj 
    1005          DO ji=1,jpi-1 
    1006             zumsk = msk(ji,jj) * msk(ji+1,jj) 
    1007             zdX ( ji, jj ) = ( pvar2d( ji+1,jj ) - pvar2d( ji  ,jj ) ) * zumsk 
    1008          END DO 
    1009       END DO      
     1003      DO_2D_11_10 
     1004         zumsk = msk(ji,jj) * msk(ji+1,jj) 
     1005         zdX ( ji, jj ) = ( pvar2d( ji+1,jj ) - pvar2d( ji  ,jj ) ) * zumsk 
     1006      END_2D 
    10101007       
    1011      DO jj=1,jpj-1 
    1012          DO ji=1,jpi 
    1013             zvmsk = msk(ji,jj) * msk(ji,jj+1) 
    1014             zdY ( ji, jj ) = ( pvar2d( ji, jj+1 ) - pvar2d( ji  ,jj ) ) * zvmsk 
    1015          END DO 
    1016       END DO 
     1008     DO_2D_10_11 
     1009         zvmsk = msk(ji,jj) * msk(ji,jj+1) 
     1010         zdY ( ji, jj ) = ( pvar2d( ji, jj+1 ) - pvar2d( ji  ,jj ) ) * zvmsk 
     1011     END_2D 
    10171012       
    1018      DO jj=1,jpj-1 
    1019          DO ji=2,jpi-1 
    1020             zFY ( ji, jj  ) =   zdY ( ji, jj   )                        & 
    1021                & +  smth_a*  ( (zdX ( ji, jj+1 ) - zdX( ji-1, jj+1 ))   & 
    1022                &            -  (zdX ( ji, jj   ) - zdX( ji-1, jj   ))  ) 
    1023          END DO 
    1024       END DO 
    1025  
    1026       DO jj=2,jpj-1 
    1027          DO ji=1,jpi-1 
    1028             zFX( ji, jj  ) =    zdX( ji, jj   )                         & 
    1029               &    + smth_a*(  (zdY( ji+1, jj ) - zdY( ji+1, jj-1))     & 
    1030               &             -  (zdY( ji  , jj ) - zdY( ji  , jj-1)) ) 
    1031          END DO 
    1032       END DO      
    1033  
    1034       DO jj = 2, jpj-1 
    1035          DO ji = 2,jpi-1 
    1036             pvar2d( ji  ,jj ) = pvar2d( ji  ,jj )              & 
    1037      &         + msk(ji,jj) * smth_b * (                       & 
    1038      &                  zFX( ji, jj ) - zFX( ji-1, jj )        & 
    1039      &                 +zFY( ji, jj ) - zFY( ji, jj-1 )  ) 
    1040          END DO 
    1041       END DO   
     1013     DO_2D_10_00 
     1014         zFY ( ji, jj  ) =   zdY ( ji, jj   )                        & 
     1015            & +  smth_a*  ( (zdX ( ji, jj+1 ) - zdX( ji-1, jj+1 ))   & 
     1016            &            -  (zdX ( ji, jj   ) - zdX( ji-1, jj   ))  ) 
     1017     END_2D 
     1018 
     1019      DO_2D_00_10 
     1020         zFX( ji, jj  ) =    zdX( ji, jj   )                         & 
     1021           &    + smth_a*(  (zdY( ji+1, jj ) - zdY( ji+1, jj-1))     & 
     1022           &             -  (zdY( ji  , jj ) - zdY( ji  , jj-1)) ) 
     1023      END_2D 
     1024 
     1025      DO_2D_00_00 
     1026         pvar2d( ji  ,jj ) = pvar2d( ji  ,jj )              & 
     1027  &         + msk(ji,jj) * smth_b * (                       & 
     1028  &                  zFX( ji, jj ) - zFX( ji-1, jj )        & 
     1029  &                 +zFY( ji, jj ) - zFY( ji, jj-1 )  ) 
     1030      END_2D 
    10421031     !! 
    10431032!--------------------------------------------------------------------------------------------------- 
  • NEMO/branches/2019/dev_r11943_MERGE_2019/src/ABL/sbcabl.F90

    r12199 r12353  
    4545   PUBLIC   sbc_abl            ! routine called in sbcmod module 
    4646 
    47    !! * Substitutions 
    48 #  include "vectopt_loop_substitute.h90" 
    4947   !!---------------------------------------------------------------------- 
    5048   !! NEMO/OPA 3.7 , NEMO-consortium (2014) 
Note: See TracChangeset for help on using the changeset viewer.