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 5336 for branches/2015/dev_r5204_CNRS_PISCES_dcy/NEMOGCM/NEMO/OPA_SRC/TRA/tranxt.F90 – NEMO

Ignore:
Timestamp:
2015-06-03T08:59:38+02:00 (9 years ago)
Author:
cetlod
Message:

dev_r5204_CNRS_PISCES_dcy : some bugfix to improve passive tracers conservation + adding the tracer unit vector in MY_TRC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5204_CNRS_PISCES_dcy/NEMOGCM/NEMO/OPA_SRC/TRA/tranxt.F90

    r4990 r5336  
    143143      ELSE                                            ! Leap-Frog + Asselin filter time stepping 
    144144         ! 
    145          IF( lk_vvl )  THEN   ;   CALL tra_nxt_vvl( kt, nit000, 'TRA', tsb, tsn, tsa, jpts )  ! variable volume level (vvl)      
    146          ELSE                 ;   CALL tra_nxt_fix( kt, nit000, 'TRA', tsb, tsn, tsa, jpts )  ! fixed    volume level  
     145         IF( lk_vvl )  THEN   ;   CALL tra_nxt_vvl( kt, nit000, rdttra, 'TRA', tsb, tsn, tsa, jpts )  ! variable volume level (vvl)      
     146         ELSE                 ;   CALL tra_nxt_fix( kt, nit000,         'TRA', tsb, tsn, tsa, jpts )  ! fixed    volume level  
    147147         ENDIF 
    148148      ENDIF  
     
    241241 
    242242 
    243    SUBROUTINE tra_nxt_vvl( kt, kit000, cdtype, ptb, ptn, pta, kjpt ) 
     243   SUBROUTINE tra_nxt_vvl( kt, kit000, p2dt, cdtype, ptb, ptn, pta, kjpt ) 
    244244      !!---------------------------------------------------------------------- 
    245245      !!                   ***  ROUTINE tra_nxt_vvl  *** 
     
    267267      INTEGER         , INTENT(in   )                               ::   kt       ! ocean time-step index 
    268268      INTEGER         , INTENT(in   )                               ::   kit000   ! first time step index 
     269      REAL(wp)        , INTENT(in   ), DIMENSION(jpk)               ::   p2dt     ! time-step 
    269270      CHARACTER(len=3), INTENT(in   )                               ::   cdtype   ! =TRA or TRC (tracer indicator) 
    270271      INTEGER         , INTENT(in   )                               ::   kjpt     ! number of tracers 
     
    297298      DO jn = 1, kjpt       
    298299         DO jk = 1, jpkm1 
    299             zfact1 = atfp * rdttra(jk) 
     300            zfact1 = atfp * p2dt(jk) 
    300301            zfact2 = zfact1 / rau0 
    301302            DO jj = 1, jpj 
     
    315316                  ztc_f  = ztc_n  + atfp * ztc_d 
    316317                  ! 
    317                   IF( ll_tra .AND. jk == 1 ) THEN           ! first level only for T & S 
    318                       ze3t_f = ze3t_f - zfact2 * ( emp_b(ji,jj) - emp(ji,jj) ) 
    319                       ztc_f  = ztc_f  - zfact1 * ( sbc_tsc(ji,jj,jn) - sbc_tsc_b(ji,jj,jn) ) 
     318                  IF( jk == 1 ) THEN           ! first level  
     319                                  ze3t_f = ze3t_f - zfact2 * ( emp_b(ji,jj) - emp(ji,jj) ) 
     320                     IF( ll_tra ) ztc_f  = ztc_f  - zfact1 * ( sbc_tsc(ji,jj,jn) - sbc_tsc_b(ji,jj,jn) ) 
    320321                  ENDIF 
    321322                  IF( ll_traqsr .AND. jn == jp_tem .AND. jk <= nksr )   &     ! solar penetration (temperature only) 
Note: See TracChangeset for help on using the changeset viewer.