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 2082 for branches/DEV_r2006_merge_TRA_TRC/NEMO/OPA_SRC/TRA/traadv_muscl2.F90 – NEMO

Ignore:
Timestamp:
2010-09-10T12:32:58+02:00 (14 years ago)
Author:
cetlod
Message:

Improve the merge of TRA-TRC, see ticket #717

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DEV_r2006_merge_TRA_TRC/NEMO/OPA_SRC/TRA/traadv_muscl2.F90

    r2034 r2082  
    2222   USE lbclnk          ! ocean lateral boundary condition (or mpp link)  
    2323   USE diaptr          ! poleward transport diagnostics 
     24   USE trc_oce         ! share passive tracers/Ocean variables 
    2425 
    2526 
     
    4344CONTAINS 
    4445 
    45    SUBROUTINE tra_adv_muscl2( kt, cdtype, pun, pvn, pwn, & 
    46       &                                   ptb, ptn, pta, kjpt   ) 
     46   SUBROUTINE tra_adv_muscl2( kt, cdtype, p2dt, pun, pvn, pwn, & 
     47      &                                         ptb, ptn, pta, kjpt   ) 
    4748      !!---------------------------------------------------------------------- 
    4849      !!                   ***  ROUTINE tra_adv_muscl2  *** 
     
    6768      CHARACTER(len=3), INTENT(in   )                               ::   cdtype          ! =TRA or TRC (tracer indicator) 
    6869      INTEGER         , INTENT(in   )                               ::   kjpt            ! number of tracers 
     70      REAL(wp)        , INTENT(in   ), DIMENSION(jpk)               ::   p2dt            ! vertical profile of tracer time-step 
    6971      REAL(wp)        , INTENT(in   ), DIMENSION(jpi,jpj,jpk)       ::   pun, pvn, pwn   ! 3 ocean velocity components 
    7072      REAL(wp)        , INTENT(in   ), DIMENSION(jpi,jpj,jpk,kjpt)  ::   ptb, ptn        ! before and now tracer fields 
     
    7577      REAL(wp) ::   zv, z0v, zzwy 
    7678      REAL(wp) ::   zw, z0w 
    77       REAL(wp) ::   ztra, zbtr, z2, zdt, zalpha 
     79      REAL(wp) ::   ztra, zbtr, zdt, zalpha 
    7880      REAL(wp), DIMENSION (jpi,jpj,jpk) ::  zslpx, zslpy   ! 3D workspace 
    7981      !!---------------------------------------------------------------------- 
    8082 
    81       IF( kt == nit000 .AND. lwp ) THEN 
     83      IF( ( cdtype == 'TRA' .AND. kt == nit000 ) .OR. ( cdtype == 'TRC' .AND. kt == nittrc000 ) ) THEN 
    8284         WRITE(numout,*) 
    83          WRITE(numout,*) 'tra_adv_muscl2 : MUSCL2 advection scheme' 
     85         WRITE(numout,*) 'tra_adv_muscl2 : MUSCL2 advection scheme on ', cdtype 
    8486         WRITE(numout,*) '~~~~~~~~~~~~~~~' 
    8587         ! 
     
    8890      ENDIF 
    8991 
    90       IF( neuler == 0 .AND. kt == nit000 ) THEN   ;   z2 = 1. 
    91       ELSE                                        ;   z2 = 2. 
    92       ENDIF 
    93       ! 
    9492      ! 
    9593      DO jn = 1, kjpt                                            ! tracer loop 
     
    139137        !                                             !-- MUSCL horizontal advective fluxes 
    140138         DO jk = 1, jpkm1                                     ! interior values 
    141             zdt  = z2 * rdttra(jk) 
     139            zdt  = p2dt(jk) 
    142140            DO jj = 2, jpjm1 
    143141               DO ji = fs_2, fs_jpim1   ! vector opt. 
     
    255253         ! 
    256254         DO jk = 1, jpkm1                                     ! interior values 
    257             zdt  = z2 * rdttra(jk) 
     255            zdt  = p2dt(jk) 
    258256            DO jj = 2, jpjm1 
    259257               DO ji = fs_2, fs_jpim1   ! vector opt. 
Note: See TracChangeset for help on using the changeset viewer.