Changeset 10173


Ignore:
Timestamp:
2018-10-05T14:38:01+02:00 (21 months ago)
Author:
smasson
Message:

dev_r10164_HPC09_ESIWACE_PREP_MERGE: action 3a: north fold bugfix for U and F upper-right corner with jperio=6, see #2133

Location:
NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/LBC
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/LBC/lbc_nfd_ext_generic.h90

    r10068 r10173  
    106106                     ARRAY_IN(ji,ipj+jh,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(iju,ipj-1-jh,:,:,jf) 
    107107                  END DO 
    108                   ARRAY_IN(jpiglo,ipj+jh,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(1,ipj-1-jh,:,:,jf) 
     108                  ARRAY_IN(jpiglo,ipj+jh,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(jpiglo-2,ipj-1-jh,:,:,jf) 
    109109               END DO 
    110110            CASE ( 'V' )                               ! V-point 
     
    125125                     ARRAY_IN(ji,ipj+jh  ,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(iju,ipj-2-jh,:,:,jf) 
    126126                  END DO 
    127                   ARRAY_IN(jpiglo,ipj+jh,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(1,ipj-2-jh,:,:,jf) 
     127                  ARRAY_IN(jpiglo,ipj+jh,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(jpiglo-2,ipj-2-jh,:,:,jf) 
    128128               END DO 
    129129               DO ji = jpiglo/2+1, jpiglo-1 
  • NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/LBC/lbc_nfd_generic.h90

    r10068 r10173  
    129129                  ARRAY_IN(ji,ipj,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(iju,ipj-1,:,:,jf) 
    130130               END DO 
    131                ARRAY_IN(jpiglo,ipj,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(1,ipj-1,:,:,jf) 
     131               ARRAY_IN(jpiglo,ipj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(jpiglo-2,ipj-1,:,:,jf) 
    132132            CASE ( 'V' )                               ! V-point 
    133133               DO ji = 1, jpiglo 
     
    144144                  ARRAY_IN(ji,ipj  ,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(iju,ipj-2,:,:,jf) 
    145145               END DO 
    146                ARRAY_IN(jpiglo,ipj,:,:,jf) = SGN_IN(jf)  * ARRAY_IN(1,ipj-2,:,:,jf) 
     146               ARRAY_IN(jpiglo,ipj,:,:,jf) = SGN_IN(jf)   * ARRAY_IN(jpiglo-2,ipj-2,:,:,jf) 
    147147               DO ji = jpiglo/2+1, jpiglo-1 
    148148                  iju = jpiglo-ji 
  • NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/LBC/lbc_nfd_nogather_generic.h90

    r10068 r10173  
    200200               ENDIF 
    201201               ! 
    202             CASE ( 'I' )                                     ! ice U-V point (I-point) 
    203                IF( nimpp /= 1 ) THEN 
    204                   startloop = 1 
    205                ELSE 
    206                   startloop = 3 
    207                   ARRAY_IN(2,ijpj,:,:,jf) = SGN_IN(jf) * ARRAY2_IN(3,ijpjm1,:,:,jf) 
    208                ENDIF 
    209                DO ji = startloop, nlci 
    210                   iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 5 
    211                   ARRAY_IN(ji,ijpj,:,:,jf) = SGN_IN(jf) * ARRAY2_IN(iju,ijpjm1,:,:,jf) 
    212                END DO 
    213202            END SELECT 
    214203            ! 
     
    233222               END DO 
    234223               IF((nimpp + nlci - 1) .eq. jpiglo) THEN 
    235                         ARRAY_IN(nlci,ijpj,:,:,jf) = SGN_IN(jf) * ARRAY2_IN(1,ijpj-1,:,:,jf) 
     224                        ARRAY_IN(nlci,ijpj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(nlci-2,ijpj-1,:,:,jf) 
    236225               ENDIF 
    237226               ! 
     
    267256               END DO 
    268257               IF((nimpp + nlci - 1) .eq. jpiglo) THEN 
    269                         ARRAY_IN(nlci,ijpj,:,:,jf) = SGN_IN(jf) * ARRAY2_IN(1,ijpj-2,:,:,jf) 
     258                        ARRAY_IN(nlci,ijpj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(nlci-2,ijpj-2,:,:,jf) 
    270259               ENDIF 
    271260               ! 
     
    288277                  END DO 
    289278               ENDIF 
    290                ! 
    291             CASE ( 'I' )                                  ! ice U-V point (I-point) 
    292                IF( nimpp /= 1 ) THEN 
    293                   startloop = 1 
    294                ELSE 
    295                   startloop = 2 
    296                ENDIF 
    297                IF( nimpp + nlci - 1 /= jpiglo ) THEN 
    298                   endloop = nlci 
    299                ELSE 
    300                   endloop = nlci - 1 
    301                ENDIF 
    302                DO ji = startloop , endloop 
    303                   ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    304                   ARRAY_IN(ji,ijpj,:,:,jf) = 0.5 * (ARRAY_IN(ji,ijpjm1,:,:,jf) + SGN_IN(jf) * ARRAY2_IN(ijt,ijpjm1,:,:,jf)) 
    305                END DO 
    306279               ! 
    307280            END SELECT 
Note: See TracChangeset for help on using the changeset viewer.