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 434 for trunk/NEMO/OPA_SRC/TRA – NEMO

Changeset 434 for trunk/NEMO/OPA_SRC/TRA


Ignore:
Timestamp:
2006-04-10T17:46:12+02:00 (18 years ago)
Author:
opalod
Message:

nemo_v1_update_044 : CT : update the passive tracers TOP component and the standard GYRE configuration

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/TRA/tradmp.F90

    r418 r434  
    2424   USE dtatem          ! temperature data 
    2525   USE dtasal          ! salinity data 
     26   USE dtasss          ! surface salinity data 
    2627   USE zdfmxl          ! mixed layer depth 
    2728   USE lib_mpp         ! distribued memory computing 
     
    4748   !! * Module variables 
    4849   INTEGER  ::             & !!! * newtonian damping namelist (mandmp) * 
    49       ndmp   =   -1 ,      &  ! = 0/-1/'latitude' for damping over T and S 
     50      ndmp   =   -1 ,      &  ! = 0/-1/-2/'latitude' for damping over T and S 
    5051      ndmpf  =    2 ,      &  ! = 1 create a damping.coeff NetCDF file  
    51       nmldmp =    0           ! = 0/1/2 flag for damping in the mixed layer 
     52      nmldmp =    0           ! = 0/1/2/3 flag for damping in the mixed layer 
    5253   REAL(wp) ::             & !!!  * newtonian damping namelist * 
    5354      sdmp   =   50.,      &  ! surface time scale for internal damping (days) 
     
    177178         END DO 
    178179 
     180      CASE( 3 )                ! newtonian damping of SSS only 
     181         DO jj = 2, jpjm1 
     182            DO ji = fs_2, fs_jpim1   ! vector opt. 
     183               zsa = resto(ji,jj,1) * ( sss(ji,jj) - sb(ji,jj,1) ) 
     184               ! add the trends to the general tracer trends 
     185               sa(ji,jj,1) = sa(ji,jj,1) + zsa 
     186               ! save the salinity trend (used in flx to close the salt budget) 
     187               strdmp(ji,jj,1) = zsa 
     188            END DO 
     189         END DO 
     190 
    179191      END SELECT 
    180192 
     
    237249      SELECT CASE ( ndmp ) 
    238250 
     251      CASE ( -2 )               ! GYRE: damping SSS only 
     252         IF(lwp) WRITE(numout,*) '          SSS damping in Gyre' 
     253 
    239254      CASE ( -1 )               ! ORCA: damping in Red & Med Seas only 
    240255         IF(lwp) WRITE(numout,*) '          tracer damping in the Med & Red seas only' 
     
    261276      CASE ( 2 )                ! no damping in the mixed layer  
    262277         IF(lwp) WRITE(numout,*) '          no tracer damping in the mixed layer' 
     278 
     279      CASE ( 3 )                ! SSS damping only  
     280         IF(lwp) WRITE(numout,*) '          SSS surface damping' 
    263281 
    264282      CASE DEFAULT 
     
    275293         nstop = nstop + 1 
    276294      ENDIF 
     295 
     296      IF( lk_dtasss .AND. ( ( ndmp /= -2 ) .OR. (nmldmp /= 3) ) ) THEN 
     297         IF(lwp) WRITE(numout,cform_err) 
     298         IF(lwp) WRITE(numout,*) '          Check namelist for SSS restoring in Gyre ' 
     299         IF(lwp) WRITE(numout,*) '          ndmp must be -2 and nmldmp must be 3' 
     300         nstop = nstop + 1 
     301      ENDIF 
     302 
     303 
    277304 
    278305      strdmp(:,:,:) = 0.e0       ! internal damping salinity trend (used in ocesbc) 
     
    656683         resto(:,:,jpk) = 0.e0 
    657684 
     685      ELSEIF( cp_cfg == "gyre" .AND. ( ndmp == -2 )) THEN 
     686 
     687         !                                         ! ========================= 
     688         !                                         !  SSS damping 
     689         !                                         ! ========================= 
     690         zsdmp = 1./(sdmp * rday) 
     691         IF(lwp)WRITE(numout,*) 
     692         IF(lwp)WRITE(numout,*) '              GYRE configuration: Damping coefficient' 
     693         resto(:,:, : ) = 0. 
     694         resto(:,:, 1 ) = zsdmp * tmask(:,:,1) 
     695 
    658696      ELSE 
    659697         !    ------------ 
Note: See TracChangeset for help on using the changeset viewer.