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 9923 for NEMO/branches/2018/dev_r9838_ENHANCE04_MLF/src/OCE/BDY/bdylib.F90 – NEMO

Ignore:
Timestamp:
2018-07-11T10:24:17+02:00 (6 years ago)
Author:
gm
Message:

#1911 (ENHANCE-04): step I.2: dev_r9838_ENHANCE04_MLF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r9838_ENHANCE04_MLF/src/OCE/BDY/bdylib.F90

    r9598 r9923  
    44   !! Unstructured Open Boundary Cond. :  Library module of generic boundary algorithms. 
    55   !!====================================================================== 
    6    !! History :  3.6  !  2013     (D. Storkey) original code 
    7    !!            4.0  !  2014     (T. Lovato) Generalize OBC structure 
     6   !! History :  3.6  !  2013     (D. Storkey)  original code 
     7   !!            4.0  !  2014     (T. Lovato)  Generalize OBC structure 
    88   !!---------------------------------------------------------------------- 
     9    
    910   !!---------------------------------------------------------------------- 
    10    !!   bdy_orlanski_2d 
    11    !!   bdy_orlanski_3d 
     11   !!  bdy_frs        : Apply the Flow Relaxation Scheme (tracers) 
     12   !!  bdy_spe        : Apply a specified value (tracers) 
     13   !!  bdy_orl        : Apply Orlanski radiation (tracers) 
     14   !!  bdy_orlanski_2d:   2D      -        -         - 
     15   !!  bdy_orlanski_3d:   3D      -        -         - 
     16   !!  bdy_nmn        : Duplicate the value at open boundaries (zero gradient) 
    1217   !!---------------------------------------------------------------------- 
    1318   USE oce            ! ocean dynamics and tracers  
     
    2227   PRIVATE 
    2328 
    24    PUBLIC   bdy_frs, bdy_spe, bdy_nmn, bdy_orl 
    25    PUBLIC   bdy_orlanski_2d 
    26    PUBLIC   bdy_orlanski_3d 
     29   PUBLIC   bdy_frs, bdy_spe, bdy_nmn 
     30   PUBLIC   bdy_orl, bdy_orlanski_2d, bdy_orlanski_3d 
    2731 
    2832   !!---------------------------------------------------------------------- 
     
    230234         ! Note no rdt factor in expression for zdt because it cancels in the expressions for  
    231235         ! zrx and zry. 
    232          zdt = phia(iibm1,ijbm1) - phib(iibm1,ijbm1) 
     236         zdt =     phia(iibm1,ijbm1) - phib(iibm1,ijbm1) 
    233237         zdx = ( ( phia(iibm1,ijbm1) - phia(iibm2,ijbm2) ) / zex2 ) * zmask_x  
    234238         zdy_1 = ( ( phib(iibm1   ,ijbm1   ) - phib(iibm1jm1,ijbm1jm1) ) / zey1 ) * zmask_y1     
     
    247251         zout = sign( 1., zrx ) 
    248252         zout = 0.5*( zout + abs(zout) ) 
    249          zwgt = 2.*rdt*( (1.-zout) * idx%nbd(jb,igrd) + zout * idx%nbdout(jb,igrd) ) 
     253         zwgt = rDt*( (1.-zout) * idx%nbd(jb,igrd) + zout * idx%nbdout(jb,igrd) ) 
    250254         ! only apply radiation on outflow points  
    251255         if( ll_npo ) then     !! NPO version !! 
     
    385389            ! Centred derivative is calculated as average of "left" and "right" derivatives for  
    386390            ! this reason.  
    387             zdt = phia(iibm1,ijbm1,jk) - phib(iibm1,ijbm1,jk) 
     391            zdt =     phia(iibm1,ijbm1,jk) - phib(iibm1,ijbm1,jk) 
    388392            zdx = ( ( phia(iibm1,ijbm1,jk) - phia(iibm2,ijbm2,jk) ) / zex2 ) * zmask_x                   
    389393            zdy_1 = ( ( phib(iibm1   ,ijbm1   ,jk) - phib(iibm1jm1,ijbm1jm1,jk) ) / zey1 ) * zmask_y1   
     
    403407            zout = sign( 1., zrx ) 
    404408            zout = 0.5*( zout + abs(zout) ) 
    405             zwgt = 2.*rdt*( (1.-zout) * idx%nbd(jb,igrd) + zout * idx%nbdout(jb,igrd) ) 
     409            zwgt = rDt*( (1.-zout) * idx%nbd(jb,igrd) + zout * idx%nbdout(jb,igrd) ) 
    406410            ! only apply radiation on outflow points  
    407411            if( ll_npo ) then     !! NPO version !! 
     
    426430      ! 
    427431   END SUBROUTINE bdy_orlanski_3d 
     432 
    428433 
    429434   SUBROUTINE bdy_nmn( idx, igrd, phia ) 
Note: See TracChangeset for help on using the changeset viewer.