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 15267 for NEMO/trunk/src/OCE/LBC/lbc_nfd_generic.h90 – NEMO

Ignore:
Timestamp:
2021-09-17T11:04:34+02:00 (3 years ago)
Author:
smasson
Message:

trunk: new nogather nolding, #2724

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/OCE/LBC/lbc_nfd_generic.h90

    r14433 r15267  
    2929            SELECT CASE ( cd_nat(jf) ) 
    3030            CASE ( 'T' , 'W' )                         ! T-, W-point 
    31                DO jl = 1, ipl; DO jk = 1, ipk 
     31               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    3232                  ! 
    3333                  ! last khls lines (from ipj to ipj-khls+1) : full 
     
    5353                     DO ji = 1, 1                 ! point ipi - khls + 1 
    5454                        ii1 = ipi - khls + ji 
    55                         ii2 =          khls + ji 
     55                        ii2 =       khls + ji 
    5656                        ptab(jf)%pt4d(ii1,ij1,jk,jl) = psgn(jf) * ptab(jf)%pt4d(ii2,ij2,jk,jl) 
    5757                     END DO 
     
    8484               END DO; END DO 
    8585            CASE ( 'U' )                               ! U-point 
    86                DO jl = 1, ipl; DO jk = 1, ipk 
     86               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    8787                  ! 
    8888                  ! last khls lines (from ipj to ipj-khls+1) : full 
     
    103103                     DO ji = 1, khls              ! last khls points 
    104104                        ii1 = ipi - khls + ji            ! ends at: ipi - khls + khls = ipi 
    105                         ii2 = ipi - khls + 1 - ji        ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
     105                        ii2 = ipi - khls - ji + 1        ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
    106106                        ptab(jf)%pt4d(ii1,ij1,jk,jl) = psgn(jf) * ptab(jf)%pt4d(ii2,ij2,jk,jl) 
    107107                     END DO 
     
    129129               END DO; END DO 
    130130            CASE ( 'V' )                               ! V-point 
    131                DO jl = 1, ipl; DO jk = 1, ipk 
     131               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    132132                  ! 
    133133                  ! last khls+1 lines (from ipj to ipj-khls) : full 
     
    153153                     DO ji = 1, 1                 ! point ipi - khls + 1 
    154154                        ii1 = ipi - khls + ji 
    155                         ii2 =          khls + ji 
     155                        ii2 =       khls + ji 
    156156                        ptab(jf)%pt4d(ii1,ij1,jk,jl) = psgn(jf) * ptab(jf)%pt4d(ii2,ij2,jk,jl) 
    157157                     END DO 
     
    165165               END DO; END DO 
    166166            CASE ( 'F' )                               ! F-point 
    167                DO jl = 1, ipl; DO jk = 1, ipk 
     167               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    168168                  ! 
    169169                  ! last khls+1 lines (from ipj to ipj-khls) : full 
     
    184184                     DO ji = 1, khls              ! last khls points 
    185185                        ii1 = ipi - khls + ji            ! ends at: ipi - khls + khls = ipi 
    186                         ii2 = ipi - khls + 1 - ji        ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
     186                        ii2 = ipi - khls - ji + 1        ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
    187187                        ptab(jf)%pt4d(ii1,ij1,jk,jl) = psgn(jf) * ptab(jf)%pt4d(ii2,ij2,jk,jl) 
    188188                     END DO 
     
    198198            SELECT CASE ( cd_nat(jf) ) 
    199199            CASE ( 'T' , 'W' )                         ! T-, W-point 
    200                DO jl = 1, ipl; DO jk = 1, ipk 
     200               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    201201                  ! 
    202202                  ! first: line number ipj-khls : 3 points 
     
    212212                     DO ji = 1, 1                 ! points ipi - khls 
    213213                        ii1 = ipi - khls + ji - 1 
    214                         ii2 =          khls + ji 
     214                        ii2 =       khls + ji 
    215215                        ptab(jf)%pt4d(ii1,ij1,jk,jl) =            ptab(jf)%pt4d(ii2,ij2,jk,jl)   ! Warning: pb with sign... 
    216216                     END DO 
     
    240240                     DO ji = 1, khls              ! last khls points 
    241241                        ii1 = ipi - khls + ji            ! ends at: ipi - khls + khls = ipi 
    242                         ii2 = ipi - khls + 1 - ji        ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
     242                        ii2 = ipi - khls - ji + 1        ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
    243243                        ptab(jf)%pt4d(ii1,ij1,jk,jl) = psgn(jf) * ptab(jf)%pt4d(ii2,ij2,jk,jl) 
    244244                     END DO 
     
    247247               END DO; END DO 
    248248            CASE ( 'U' )                               ! U-point 
    249                DO jl = 1, ipl; DO jk = 1, ipk 
     249               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    250250                  ! 
    251251                  ! last khls lines (from ipj to ipj-khls+1) : full 
     
    283283               END DO; END DO 
    284284            CASE ( 'V' )                               ! V-point 
    285                DO jl = 1, ipl; DO jk = 1, ipk 
     285               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    286286                  ! 
    287287                  ! last khls lines (from ipj to ipj-khls+1) : full 
     
    302302                     DO ji = 1, khls            ! last khls points 
    303303                        ii1 = ipi - khls + ji          ! ends at: ipi - khls + khls = ipi 
    304                         ii2 = ipi - khls + 1 - ji      ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
     304                        ii2 = ipi - khls - ji + 1      ! ends at: ipi - khls + 1 - khls = ipi - 2*khls + 1 
    305305                        ptab(jf)%pt4d(ii1,ij1,jk,jl) = psgn(jf) * ptab(jf)%pt4d(ii2,ij2,jk,jl) 
    306306                     END DO 
     
    328328               END DO; END DO 
    329329            CASE ( 'F' )                               ! F-point 
    330                DO jl = 1, ipl; DO jk = 1, ipk 
     330               DO jl = 1, ipl   ;  DO jk = 1, ipk 
    331331                  ! 
    332332                  ! last khls lines (from ipj to ipj-khls+1) : full 
Note: See TracChangeset for help on using the changeset viewer.