Changeset 9150


Ignore:
Timestamp:
2017-12-21T12:03:00+01:00 (3 years ago)
Author:
deazer
Message:

Sign fix and deal with bdy corner points.

Location:
branches/UKMO/ROMS_WAD_7832/NEMOGCM/NEMO/OPA_SRC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/ROMS_WAD_7832/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn2d.F90

    r8981 r9150  
    292292!                 &           zssh(ii  ,ij-1) * tmask(ii  ,ij-1,1) + & 
    293293!                 &           zssh(ii  ,ij+1) * tmask(ii  ,ij+1,1) 
    294                zcoef = bdytmask(ii-1,ij) + bdytmask(ii+1,ij) +  bdytmask(ii,ij-1) +  bdytmask(ii,ij+1) 
    295                zssh(ii,ij) = zssh(ii-1,ij  ) * bdytmask(ii-1,ij  ) + & 
    296                  &           zssh(ii+1,ij  ) * bdytmask(ii+1,ij  ) + & 
    297                  &           zssh(ii  ,ij-1) * bdytmask(ii  ,ij-1) + & 
    298                  &           zssh(ii  ,ij+1) * bdytmask(ii  ,ij+1) 
    299                zssh(ii,ij) = ( zssh(ii,ij) / MAX( 1, zcoef) ) * tmask(ii,ij,1) 
     294!CEODORIG               zcoef = bdytmask(ii-1,ij) + bdytmask(ii+1,ij) +  bdytmask(ii,ij-1) +  bdytmask(ii,ij+1) 
     295!CEODORIG               zssh(ii,ij) = zssh(ii-1,ij  ) * bdytmask(ii-1,ij  ) + & 
     296!CEODORIG                 &           zssh(ii+1,ij  ) * bdytmask(ii+1,ij  ) + & 
     297!CEODORIG                 &           zssh(ii  ,ij-1) * bdytmask(ii  ,ij-1) + & 
     298!CEODORIG                 &           zssh(ii  ,ij+1) * bdytmask(ii  ,ij+1) 
     299!CEODORIG               zssh(ii,ij) = ( zssh(ii,ij) / MAX( 1, zcoef) ) * tmask(ii,ij,1) 
     300!CEOD Just look at diagonals bdytmaks will only be non zero for point required. 
     301               zssh(ii,ij) = zssh( ii-1, ij-1 ) * bdytmask( ii-1, ij-1) + & 
     302                 &           zssh( ii+1, ij+1 ) * bdytmask( ii+1, ij+1) + & 
     303                 &           zssh( ii+1, ij-1 ) * bdytmask( ii+1, ij-1) + & 
     304                 &           zssh( ii-1, ij+1 ) * bdytmask( ii-1, ij+1) 
    300305            ELSE 
    301306               ip = bdytmask(ii+1,ij  ) - bdytmask(ii-1,ij  ) 
  • branches/UKMO/ROMS_WAD_7832/NEMOGCM/NEMO/OPA_SRC/DYN/dynnxt.F90

    r8865 r9150  
    227227                           DO ji = 1, jpi 
    228228                              IF( mikt(ji,jj) <= jk .and. jk <=  nk_rnf(ji,jj)  ) THEN 
    229                                  e3t_b(ji,jj,jk) = e3t_b(ji,jj,jk) - zcoef *  (rnf_b(ji,jj) - rnf(ji,jj))*(e3t_n(ji,jj,jk)/h_rnf(ji,jj)  )*tmask(ji,jj,jk) 
     229                                 e3t_b(ji,jj,jk) = e3t_b(ji,jj,jk) - zcoef *  (-rnf_b(ji,jj) + rnf(ji,jj))*(e3t_n(ji,jj,jk)/h_rnf(ji,jj)  )*tmask(ji,jj,jk) 
    230230                              ENDIF 
    231231                           ENDDO 
     
    233233                     ENDDO 
    234234                  ELSE 
    235                       e3t_b(:,:,1) = e3t_b(:,:,1) - zcoef *  (rnf_b(ji,jj) - rnf(ji,jj))*tmask(ji,jj,1) 
     235                      e3t_b(:,:,1) = e3t_b(:,:,1) - zcoef *  (-rnf_b(:,:) + rnf(:,:))*tmask(:,:,1) 
    236236                  ENDIF 
    237237               ELSE                     ! if ice shelf melting 
Note: See TracChangeset for help on using the changeset viewer.