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 9615 for branches/UKMO/dev_r5518_GO6_diag_bitcomp/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90 – NEMO

Ignore:
Timestamp:
2018-05-22T10:41:34+02:00 (6 years ago)
Author:
frrh
Message:

Correct U mask footprint and remove N-fold specific masking on
T points in out new 3d T mask.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_diag_bitcomp/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90

    r9614 r9615  
    252252            DO ji = iif+1, iil-1 
    253253               tmask_i(ji,nlej-1) = tmask_i(ji,nlej-1) * tpol(mig(ji)) 
    254                tmask_i_3d(ji,nlej-1,:) = tmask_i_3d(ji,nlej-1,:) * tpol(mig(ji)) 
     254               ! It would seem logical that the following SHOULD be applied,  
     255               ! but the existing code in iom.F90 which we are trying to  
     256               ! replicate, and where we aim to use this array simply uses  
     257               ! tmask which does NOT account for masking in the N-fold.   
     258               ! tmask_i_3d(ji,nlej-1,:) = tmask_i_3d(ji,nlej-1,:) * tpol(mig(ji)) 
    255259            END DO 
    256260         ENDIF 
     
    275279                  &            * tmask(ji,jj+1,jk) * tmask(ji+1,jj+1,jk) 
    276280            END DO 
    277          END DO 
     281         END DO  
    278282      END DO 
    279283      ! (ISF) MIN(1,SUM(umask)) is here to check if you have effectively at least 1 wet u point 
     
    296300 
    297301      ! Set up interior 3d U mask 
    298       umask_i_3d(:,:,:) = umask(:,:,:)  
     302      umask_i_3d(2:jpim1,:,:) = tmask(2:jpim1,:,:) + tmask(3:jpi,:,:) 
     303      CALL lbc_lnk( umask_i_3d, 'U', 1. ) 
    299304      ! Now mask out any wrap columns 
    300305      umask_i_3d( 1 :iif,:,:) = 0._wp       ! first columns 
     
    305310 
    306311      ! Set up interior 3d V mask 
    307       vmask_i_3d(:,:,:) = vmask(:,:,:)  
     312      vmask_i_3d(:,2:jpjm1,:) = tmask(:,2:jpjm1,:) + tmask(:,3:jpj,:) 
     313      CALL lbc_lnk( vmask_i_3d, 'V', 1. ) 
    308314      ! Now mask out any wrap columns 
    309315      vmask_i_3d( 1 :iif,:,:) = 0._wp       ! first columns 
Note: See TracChangeset for help on using the changeset viewer.