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 10251 for branches/UKMO/dev_r5518_AMM15_package/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90 – NEMO

Ignore:
Timestamp:
2018-10-29T15:20:26+01:00 (5 years ago)
Author:
kingr
Message:

Rolled back to r10247 - i.e., undid merge of pkg br and 3.6_stable br

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_AMM15_package/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90

    r10249 r10251  
    7676      INTEGER  ::   ib_bdy, ii, ij, ik, igrd, ib, ir, iseg ! dummy loop indices 
    7777      INTEGER  ::   icount, icountr, ibr_max, ilen1, ibm1  ! local integers 
    78       INTEGER  ::   iwe, ies, iso, ino, inum, id_dummy         !   -       - 
     78      INTEGER  ::   iw, ie, is, in, inum, id_dummy         !   -       - 
    7979      INTEGER  ::   igrd_start, igrd_end, jpbdta           !   -       - 
    8080      INTEGER  ::   jpbdtau, jpbdtas                       !   -       - 
     
    105105      !! 
    106106      NAMELIST/nambdy_index/ ctypebdy, nbdyind, nbdybeg, nbdyend 
    107        
    108        
    109 !      ! JT 
    110       NAMELIST/nambdy_ssh/ ln_ssh_bdy 
    111 !      ! JT 
    112107      INTEGER  ::   ios                 ! Local integer output status for namelist read 
    113108      !!---------------------------------------------------------------------- 
     
    137132902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwp ) 
    138133      IF(lwm) WRITE ( numond, nambdy ) 
    139       !JT Read nambdy_ssh namelist  
    140       REWIND( numnam_ref )              ! Namelist nambdy in reference namelist :Unstructured open boundaries   
    141       READ  ( numnam_ref, nambdy_ssh, IOSTAT = ios, ERR = 905) 
    142 905   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_ssh in reference namelist', lwp ) 
    143  
    144       REWIND( numnam_cfg )              ! Namelist nambdy in configuration namelist :Unstructured open boundaries 
    145       READ  ( numnam_cfg, nambdy_ssh, IOSTAT = ios, ERR = 906) 
    146 906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_ssh in configuration namelist', lwp ) 
    147       IF(lwm) WRITE ( numond, nambdy_ssh ) 
    148        
    149       IF(lwp) WRITE(numout,*) 
    150       IF(lwp) WRITE(numout,*) 'nambdy_ssh : use of ssh boundaries' 
    151       IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    152       IF(lwp) WRITE(numout,*) '      ln_ssh_bdy: ' 
    153       DO ib_bdy = 1,nb_bdy 
    154         IF(lwp) WRITE(numout,*) '      ln_ssh_bdy(',ib_bdy,'): ',ln_ssh_bdy(ib_bdy) 
    155       ENDDO 
    156       IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    157       IF(lwp) WRITE(numout,*)  
    158       !JT 
    159134 
    160135      ! ----------------------------------------- 
     
    210185          CASE DEFAULT   ;   CALL ctl_stop( 'unrecognised value for cn_dyn2d' ) 
    211186        END SELECT 
    212          
    213         !JT override dta_bdy(ib_bdy)%ll_ssh with namelist value (ln_ssh_bdy) 
    214         IF(lwp) WRITE(numout,*) 'nambdy_ssh : use of ssh boundaries' 
    215         IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    216         IF(lwp) WRITE(numout,*) '      ib_bdy: ',ib_bdy 
    217         IF(lwp) WRITE(numout,*) '      Prior to Implementation of nambdy_ssh' 
    218         IF(lwp) WRITE(numout,*) '      dta_bdy(ib_bdy)%ll_ssh: ',dta_bdy(ib_bdy)%ll_ssh 
    219          
    220         dta_bdy(ib_bdy)%ll_ssh = ln_ssh_bdy(ib_bdy) 
    221          
    222         IF(lwp) WRITE(numout,*) '      After to Implementation of nambdy_ssh' 
    223         IF(lwp) WRITE(numout,*) '      dta_bdy(ib_bdy)%ll_ssh: ',dta_bdy(ib_bdy)%ll_ssh 
    224         IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    225          
    226         !JT          
    227          
    228187        IF( cn_dyn2d(ib_bdy) /= 'none' ) THEN 
    229188           SELECT CASE( nn_dyn2d_dta(ib_bdy) )                   !  
     
    254213             dta_bdy(ib_bdy)%ll_u3d = .true. 
    255214             dta_bdy(ib_bdy)%ll_v3d = .true. 
    256           CASE('neumann')  
    257              IF(lwp) WRITE(numout,*) '      Neumann conditions'  
    258              dta_bdy(ib_bdy)%ll_u3d = .false.  
    259              dta_bdy(ib_bdy)%ll_v3d = .false.  
    260           CASE('zerograd')  
    261              IF(lwp) WRITE(numout,*) '      Zero gradient for baroclinic velocities'  
    262              dta_bdy(ib_bdy)%ll_u3d = .false.  
    263              dta_bdy(ib_bdy)%ll_v3d = .false. 
    264215          CASE('zero') 
    265216             IF(lwp) WRITE(numout,*) '      Zero baroclinic velocities (runoff case)' 
     
    826777!      is = mjg(1) + 1            ! if monotasking and no zoom, is=2 
    827778!      in = mjg(1) + nlcj-1 - 1   ! if monotasking and no zoom, in=jpjm1       
    828       iwe = mig(1) - jpizoom + 2         ! if monotasking and no zoom, iw=2 
    829       ies = mig(1) + nlci - jpizoom - 1  ! if monotasking and no zoom, ie=jpim1 
    830       iso = mjg(1) - jpjzoom + 2         ! if monotasking and no zoom, is=2 
    831       ino = mjg(1) + nlcj - jpjzoom - 1  ! if monotasking and no zoom, in=jpjm1 
     779      iw = mig(1) - jpizoom + 2         ! if monotasking and no zoom, iw=2 
     780      ie = mig(1) + nlci - jpizoom - 1  ! if monotasking and no zoom, ie=jpim1 
     781      is = mjg(1) - jpjzoom + 2         ! if monotasking and no zoom, is=2 
     782      in = mjg(1) + nlcj - jpjzoom - 1  ! if monotasking and no zoom, in=jpjm1 
    832783 
    833784      ALLOCATE( nbondi_bdy(nb_bdy)) 
     
    902853               ENDIF 
    903854               ! check if point is in local domain 
    904                IF(  nbidta(ib,igrd,ib_bdy) >= iwe .AND. nbidta(ib,igrd,ib_bdy) <= ies .AND.   & 
    905                   & nbjdta(ib,igrd,ib_bdy) >= iso .AND. nbjdta(ib,igrd,ib_bdy) <= ino      ) THEN 
     855               IF(  nbidta(ib,igrd,ib_bdy) >= iw .AND. nbidta(ib,igrd,ib_bdy) <= ie .AND.   & 
     856                  & nbjdta(ib,igrd,ib_bdy) >= is .AND. nbjdta(ib,igrd,ib_bdy) <= in       ) THEN 
    906857                  ! 
    907858                  icount = icount  + 1 
     
    939890         com_south_b = 0 
    940891         com_north_b = 0 
    941  
    942892         DO igrd = 1, jpbgrd 
    943893            icount  = 0 
     
    946896               DO ib = 1, nblendta(igrd,ib_bdy) 
    947897                  ! check if point is in local domain and equals ir 
    948                   IF(  nbidta(ib,igrd,ib_bdy) >= iwe .AND. nbidta(ib,igrd,ib_bdy) <= ies .AND.   & 
    949                      & nbjdta(ib,igrd,ib_bdy) >= iso .AND. nbjdta(ib,igrd,ib_bdy) <= ino .AND.   & 
     898                  IF(  nbidta(ib,igrd,ib_bdy) >= iw .AND. nbidta(ib,igrd,ib_bdy) <= ie .AND.   & 
     899                     & nbjdta(ib,igrd,ib_bdy) >= is .AND. nbjdta(ib,igrd,ib_bdy) <= in .AND.   & 
    950900                     & nbrdta(ib,igrd,ib_bdy) == ir  ) THEN 
    951901                     ! 
     
    11361086            DO ib = 1, idx_bdy(ib_bdy)%nblen(igrd) 
    11371087               nbr => idx_bdy(ib_bdy)%nbr(ib,igrd) 
    1138                idx_bdy(ib_bdy)%nbw(ib,igrd) = 1.- TANH( FLOAT( nbr - 1 ) * 0.5 & 
    1139                                             &  *(10./ FLOAT(nn_rimwidth(ib_bdy))) ) ! JGraham:modified for rim=15 
    1140 !               idx_bdy(ib_bdy)%nbw(ib,igrd) = 1.- TANH( FLOAT( nbr - 1 ) *0.5 )      ! tanh formulation 
     1088               idx_bdy(ib_bdy)%nbw(ib,igrd) = 1.- TANH( FLOAT( nbr - 1 ) *0.5 )      ! tanh formulation 
    11411089!               idx_bdy(ib_bdy)%nbw(ib,igrd) = (FLOAT(nn_rimwidth(ib_bdy)+1-nbr)/FLOAT(nn_rimwidth(ib_bdy)))**2.  ! quadratic 
    11421090!               idx_bdy(ib_bdy)%nbw(ib,igrd) =  FLOAT(nn_rimwidth(ib_bdy)+1-nbr)/FLOAT(nn_rimwidth(ib_bdy))       ! linear 
     
    16461594            ELSE 
    16471595               ! This is a corner 
    1648                IF(lwp) WRITE(numout,*) 'Found a South-West corner at (i,j): ', jpiwob(ib), jpjwdt(ib) 
     1596               WRITE(numout,*) 'Found a South-West corner at (i,j): ', jpiwob(ib), jpjwdt(ib) 
    16491597               CALL bdy_ctl_corn(npckgw(ib), icornw(ib,1)) 
    16501598               itest=itest+1 
     
    16601608            ELSE 
    16611609               ! This is a corner 
    1662                IF(lwp) WRITE(numout,*) 'Found a North-West corner at (i,j): ', jpiwob(ib), jpjwft(ib) 
     1610               WRITE(numout,*) 'Found a North-West corner at (i,j): ', jpiwob(ib), jpjwft(ib) 
    16631611               CALL bdy_ctl_corn(npckgw(ib), icornw(ib,2)) 
    16641612               itest=itest+1 
     
    16901638            ELSE 
    16911639               ! This is a corner 
    1692                IF(lwp) WRITE(numout,*) 'Found a South-East corner at (i,j): ', jpieob(ib)+1, jpjedt(ib) 
     1640               WRITE(numout,*) 'Found a South-East corner at (i,j): ', jpieob(ib)+1, jpjedt(ib) 
    16931641               CALL bdy_ctl_corn(npckge(ib), icorne(ib,1)) 
    16941642               itest=itest+1 
     
    17041652            ELSE 
    17051653               ! This is a corner 
    1706                IF(lwp) WRITE(numout,*) 'Found a North-East corner at (i,j): ', jpieob(ib)+1, jpjeft(ib) 
     1654               WRITE(numout,*) 'Found a North-East corner at (i,j): ', jpieob(ib)+1, jpjeft(ib) 
    17071655               CALL bdy_ctl_corn(npckge(ib), icorne(ib,2)) 
    17081656               itest=itest+1 
Note: See TracChangeset for help on using the changeset viewer.