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.
bdyini.patch on Ticket #1618 – Attachment – NEMO

Ticket #1618: bdyini.patch

File bdyini.patch, 1.7 KB (added by jamesharle, 8 years ago)
  • bdyini.F90

     
    11151115      ! bdytmask = 1  on the computational domain AND on open boundaries 
    11161116      !          = 0  elsewhere    
    11171117  
     1118      bdytmask(:,:) = ssmask(:,:) 
     1119 
    11181120      IF( ln_mask_file ) THEN 
    11191121         CALL iom_open( cn_mask_file, inum ) 
    11201122         CALL iom_get ( inum, jpdom_data, 'bdy_msk', bdytmask(:,:) ) 
     
    11311133         END DO 
    11321134         CALL lbc_lnk( bdyumask(:,:), 'U', 1. )   ;   CALL lbc_lnk( bdyvmask(:,:), 'V', 1. )      ! Lateral boundary cond. 
    11331135 
    1134  
    1135          ! Mask corrections 
    1136          ! ---------------- 
    1137          DO ik = 1, jpkm1 
    1138             DO ij = 1, jpj 
    1139                DO ii = 1, jpi 
    1140                   tmask(ii,ij,ik) = tmask(ii,ij,ik) * bdytmask(ii,ij) 
    1141                   umask(ii,ij,ik) = umask(ii,ij,ik) * bdyumask(ii,ij) 
    1142                   vmask(ii,ij,ik) = vmask(ii,ij,ik) * bdyvmask(ii,ij) 
    1143                   bmask(ii,ij)    = bmask(ii,ij)    * bdytmask(ii,ij) 
    1144                END DO       
    1145             END DO 
    1146          END DO 
    1147  
    1148          DO ik = 1, jpkm1 
    1149             DO ij = 2, jpjm1 
    1150                DO ii = 2, jpim1 
    1151                   fmask(ii,ij,ik) = fmask(ii,ij,ik) * bdytmask(ii,ij  ) * bdytmask(ii+1,ij  )   & 
    1152                      &                              * bdytmask(ii,ij+1) * bdytmask(ii+1,ij+1) 
    1153                END DO       
    1154             END DO 
    1155          END DO 
    1156  
    1157          tmask_i (:,:) = ssmask(:,:) * tmask_i(:,:) 
    1158  
    11591136      ENDIF ! ln_mask_file=.TRUE. 
    11601137       
    1161       bdytmask(:,:) = ssmask(:,:) 
    11621138      IF( .not. ln_mask_file ) THEN 
    11631139         ! If .not. ln_mask_file then we need to derive mask on U and V grid  
    11641140         ! from mask on T grid here.