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 10966 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trdmxl_trc.F90 – NEMO

Ignore:
Timestamp:
2019-05-10T18:43:09+02:00 (5 years ago)
Author:
acc
Message:

2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps : Convert TOP routines in TOP/TRP directory and all knock on effects of these conversions. SETTE tested (GYRE_PISCES only)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trdmxl_trc.F90

    r10425 r10966  
    1616   !!   trd_mxl_trc_init : initialization step 
    1717   !!---------------------------------------------------------------------- 
    18    USE trc               ! tracer definitions (trn, trb, tra, etc.) 
     18   USE trc               ! tracer definitions (tr etc.) 
    1919   USE trc_oce, ONLY :   nn_dttrc  ! frequency of step on passive tracers 
    2020   USE dom_oce           ! domain definition 
     
    7070 
    7171 
    72    SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn ) 
     72   SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn, Kmm ) 
    7373      !!---------------------------------------------------------------------- 
    7474      !!                  ***  ROUTINE trd_mxl_trc_zint  *** 
     
    9292      !! 
    9393      INTEGER, INTENT( in ) ::   ktrd, kjn                        ! ocean trend index and passive tracer rank 
     94      INTEGER, INTENT( in ) ::   Kmm                              ! time level index 
    9495      CHARACTER(len=2), INTENT( in ) ::  ctype                    ! surface/bottom (2D) or interior (3D) physics 
    9596      REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT( in ) ::  ptrc_trdmxl ! passive tracer trend 
     
    150151            DO jj = 1, jpj 
    151152               DO ji = 1, jpi 
    152                   IF( jk - nmld_trc(ji,jj) < 0 )   wkx_trc(ji,jj,jk) = e3t_n(ji,jj,jk) * tmask(ji,jj,jk) 
     153                  IF( jk - nmld_trc(ji,jj) < 0 )   wkx_trc(ji,jj,jk) = e3t(ji,jj,jk,Kmm) * tmask(ji,jj,jk) 
    153154               END DO 
    154155            END DO 
     
    183184 
    184185 
    185    SUBROUTINE trd_mxl_trc( kt ) 
     186   SUBROUTINE trd_mxl_trc( kt, Kmm ) 
    186187      !!---------------------------------------------------------------------- 
    187188      !!                  ***  ROUTINE trd_mxl_trc  *** 
     
    232233      ! 
    233234      INTEGER, INTENT(in) ::   kt   ! ocean time-step index 
     235      INTEGER, INTENT(in) ::   Kmm                              ! time level index 
    234236      ! 
    235237      INTEGER ::   ji, jj, jk, jl, ik, it, itmod, jn 
     
    267269                  ik = nmld_trc(ji,jj) 
    268270                  IF( ln_trdtrc(jn) )    & 
    269                   tmltrd_trc(ji,jj,jpmxl_trc_zdf,jn) = - avs(ji,jj,ik) / e3w_n(ji,jj,ik) * tmask(ji,jj,ik)  & 
    270                        &                    * ( trn(ji,jj,ik-1,jn) - trn(ji,jj,ik,jn) )            & 
     271                  tmltrd_trc(ji,jj,jpmxl_trc_zdf,jn) = - avs(ji,jj,ik) / e3w(ji,jj,ik,Kmm) * tmask(ji,jj,ik)  & 
     272                       &                    * ( tr(ji,jj,ik-1,jn,Kmm) - tr(ji,jj,ik,jn,Kmm) )            & 
    271273                       &                    / MAX( 1., rmld_trc(ji,jj) ) * tmask(ji,jj,1) 
    272274               END DO 
     
    322324         DO jn = 1, jptra 
    323325            IF( ln_trdtrc(jn) ) & 
    324                tml_trc(:,:,jn) = tml_trc(:,:,jn) + wkx_trc(:,:,jk) * trn(:,:,jk,jn) 
     326               tml_trc(:,:,jn) = tml_trc(:,:,jn) + wkx_trc(:,:,jk) * tr(:,:,jk,jn,Kmm) 
    325327         END DO 
    326328      END DO 
     
    970972   !!---------------------------------------------------------------------- 
    971973CONTAINS 
    972    SUBROUTINE trd_mxl_trc( kt )                                   ! Empty routine 
     974   SUBROUTINE trd_mxl_trc( kt, Kmm )                                   ! Empty routine 
    973975      INTEGER, INTENT( in) ::   kt 
     976      INTEGER, INTENT( in) ::   Kmm            ! time level index 
    974977      WRITE(*,*) 'trd_mxl_trc: You should not have seen this print! error?', kt 
    975978   END SUBROUTINE trd_mxl_trc 
    976    SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn ) 
     979   SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn, Kmm ) 
    977980      INTEGER               , INTENT( in ) ::  ktrd, kjn              ! ocean trend index and passive tracer rank 
     981      INTEGER               , INTENT( in ) ::  Kmm                    ! time level index 
    978982      CHARACTER(len=2)      , INTENT( in ) ::  ctype                  ! surface/bottom (2D) or interior (3D) physics 
    979983      REAL, DIMENSION(:,:,:), INTENT( in ) ::  ptrc_trdmxl            ! passive trc trend 
Note: See TracChangeset for help on using the changeset viewer.