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 1601 for trunk/NEMO/OPA_SRC/DOM/dommsk.F90 – NEMO

Ignore:
Timestamp:
2009-08-11T12:09:19+02:00 (15 years ago)
Author:
ctlod
Message:

Doctor naming of OPA namelist variables , see ticket: #526

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/DOM/dommsk.F90

    r1566 r1601  
    3636   PUBLIC   dom_msk    ! routine called by inidom.F90 
    3737 
    38    REAL(wp) ::   shlat = 2.   ! type of lateral boundary condition on velocity (namelist namlbc) 
     38   !                            !!* Namelist namlbc : lateral boundary condition * 
     39   REAL(wp) ::   rn_shlat = 2.   ! type of lateral boundary condition on velocity 
    3940    
    4041   !! * Substitutions 
     
    7778      !! 
    7879      !!        The lateral friction is set through the value of fmask along 
    79       !!      the coast and topography. This value is defined by shlat, a 
     80      !!      the coast and topography. This value is defined by rn_shlat, a 
    8081      !!      namelist parameter: 
    81       !!         shlat = 0, free slip  (no shear along the coast) 
    82       !!         shlat = 2, no slip  (specified zero velocity at the coast) 
    83       !!         0 < shlat < 2, partial slip   | non-linear velocity profile 
    84       !!         2 < shlat, strong slip        | in the lateral boundary layer 
     82      !!         rn_shlat = 0, free slip  (no shear along the coast) 
     83      !!         rn_shlat = 2, no slip  (specified zero velocity at the coast) 
     84      !!         0 < rn_shlat < 2, partial slip   | non-linear velocity profile 
     85      !!         2 < rn_shlat, strong slip        | in the lateral boundary layer 
    8586      !! 
    8687      !!      N.B. If nperio not equal to 0, the land/ocean mask arrays 
     
    106107      !!               vmask    : land/ocean mask at v-point (=0. or 1.) 
    107108      !!               fmask    : land/ocean mask at f-point (=0. or 1.) 
    108       !!                          =shlat along lateral boundaries 
     109      !!                          =rn_shlat along lateral boundaries 
    109110      !!               bmask    : land/ocean mask at barotropic stream 
    110111      !!                          function point (=0. or 1.) and set to 0 along lateral boundaries 
     
    114115      INTEGER  ::   iif, iil, ii0, ii1, ii 
    115116      INTEGER  ::   ijf, ijl, ij0, ij1 
    116       INTEGER, DIMENSION(jpi,jpj) ::  imsk 
     117      INTEGER , DIMENSION(jpi,jpj) ::  imsk 
    117118      REAL(wp), DIMENSION(jpi,jpj) ::   zwf 
    118  
    119       NAMELIST/namlbc/ shlat 
     119      !! 
     120      NAMELIST/namlbc/ rn_shlat 
    120121      !!--------------------------------------------------------------------- 
    121122       
     
    128129         WRITE(numout,*) '~~~~~~' 
    129130         WRITE(numout,*) '   Namelist namlbc' 
    130          WRITE(numout,*) '      lateral momentum boundary cond. shlat = ',shlat 
    131       ENDIF 
    132  
    133       IF(             shlat == 0.            ) THEN   ;   IF(lwp) WRITE(numout,*) '         ocean lateral free-slip ' 
    134         ELSEIF (      shlat == 2.            ) THEN   ;   IF(lwp) WRITE(numout,*) '         ocean lateral  no-slip ' 
    135         ELSEIF ( 0. < shlat .AND. shlat < 2. ) THEN   ;   IF(lwp) WRITE(numout,*) '         ocean lateral  partial-slip ' 
    136         ELSEIF ( 2. < shlat                  ) THEN   ;   IF(lwp) WRITE(numout,*) '         ocean lateral  strong-slip ' 
    137         ELSE 
    138           WRITE(ctmp1,*) ' shlat is negative = ', shlat 
    139           CALL ctl_stop( ctmp1 ) 
     131         WRITE(numout,*) '      lateral momentum boundary cond.    rn_shlat = ',rn_shlat 
     132      ENDIF 
     133 
     134      IF     (      rn_shlat == 0.               ) THEN   ;   IF(lwp) WRITE(numout,*) '   ocean lateral free-slip ' 
     135      ELSEIF (      rn_shlat == 2.               ) THEN   ;   IF(lwp) WRITE(numout,*) '   ocean lateral  no-slip ' 
     136      ELSEIF ( 0. < rn_shlat .AND. rn_shlat < 2. ) THEN   ;   IF(lwp) WRITE(numout,*) '   ocean lateral  partial-slip ' 
     137      ELSEIF ( 2. < rn_shlat                     ) THEN   ;   IF(lwp) WRITE(numout,*) '   ocean lateral  strong-slip ' 
     138      ELSE 
     139         WRITE(ctmp1,*) ' rn_shlat is negative = ', rn_shlat 
     140         CALL ctl_stop( ctmp1 ) 
    140141      ENDIF 
    141142 
     
    148149         DO jj = 1, jpj 
    149150            DO ji = 1, jpi 
    150                IF( REAL( mbathy(ji,jj) - jk ) +.1 >= 0.e0 ) tmask(ji,jj,jk) = 1.e0 
     151               IF( REAL( mbathy(ji,jj) - jk ) +.1 >= 0.e0 )   tmask(ji,jj,jk) = 1.e0 
    151152            END DO   
    152153         END DO   
     
    155156!!gm  ???? 
    156157#if defined key_zdfkpp 
    157       IF( cp_cfg == 'orca' )   THEN 
    158          IF( jp_cfg == 2 )   THEN 
    159             ! land point on Bab el Mandeb zonal section 
     158      IF( cp_cfg == 'orca' ) THEN 
     159         IF( jp_cfg == 2 )   THEN       ! land point on Bab el Mandeb zonal section 
    160160            ij0 =  87   ;   ij1 =  88 
    161161            ii0 = 160   ;   ii1 = 161 
     
    283283            DO ji = fs_2, fs_jpim1   ! vector opt. 
    284284               IF( fmask(ji,jj,jk) == 0. ) THEN 
    285                   fmask(ji,jj,jk) = shlat * MIN( 1., MAX( zwf(ji+1,jj), zwf(ji,jj+1),   & 
    286                      &                                    zwf(ji-1,jj), zwf(ji,jj-1)  )  ) 
     285                  fmask(ji,jj,jk) = rn_shlat * MIN( 1., MAX( zwf(ji+1,jj), zwf(ji,jj+1),   & 
     286                     &                                       zwf(ji-1,jj), zwf(ji,jj-1)  )  ) 
    287287               ENDIF 
    288288            END DO 
     
    290290         DO jj = 2, jpjm1 
    291291            IF( fmask(1,jj,jk) == 0. ) THEN 
    292                fmask(1  ,jj,jk) = shlat * MIN( 1., MAX( zwf(2,jj), zwf(1,jj+1), zwf(1,jj-1) ) ) 
     292               fmask(1  ,jj,jk) = rn_shlat * MIN( 1., MAX( zwf(2,jj), zwf(1,jj+1), zwf(1,jj-1) ) ) 
    293293            ENDIF 
    294294            IF( fmask(jpi,jj,jk) == 0. ) THEN 
    295                fmask(jpi,jj,jk) = shlat * MIN( 1., MAX( zwf(jpi,jj+1), zwf(jpim1,jj), zwf(jpi,jj-1) ) ) 
     295               fmask(jpi,jj,jk) = rn_shlat * MIN( 1., MAX( zwf(jpi,jj+1), zwf(jpim1,jj), zwf(jpi,jj-1) ) ) 
    296296            ENDIF 
    297297         END DO          
    298298         DO ji = 2, jpim1 
    299299            IF( fmask(ji,1,jk) == 0. ) THEN 
    300                fmask(ji, 1 ,jk) = shlat * MIN( 1., MAX( zwf(ji+1,1), zwf(ji,2), zwf(ji-1,1) ) ) 
     300               fmask(ji, 1 ,jk) = rn_shlat * MIN( 1., MAX( zwf(ji+1,1), zwf(ji,2), zwf(ji-1,1) ) ) 
    301301            ENDIF 
    302302            IF( fmask(ji,jpj,jk) == 0. ) THEN 
    303                fmask(ji,jpj,jk) = shlat * MIN( 1., MAX( zwf(ji+1,jpj), zwf(ji-1,jpj), zwf(ji,jpjm1) ) ) 
     303               fmask(ji,jpj,jk) = rn_shlat * MIN( 1., MAX( zwf(ji+1,jpj), zwf(ji-1,jpj), zwf(ji,jpjm1) ) ) 
    304304            ENDIF 
    305305         END DO 
Note: See TracChangeset for help on using the changeset viewer.