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 10954 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP – NEMO

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

2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps : Convert TRA modules and all knock on effects of these conversions. SETTE tested

Location:
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP
Files:
5 edited

Legend:

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

    r10946 r10954  
    118118            &              CALL ldf_eiv_trp( kt, nittrc000, zun, zvn, zwn, 'TRC', Kmm, Krhs )  ! add the eiv transport 
    119119         ! 
    120          IF( ln_mle    )   CALL tra_mle_trp( kt, nittrc000, zun, zvn, zwn, 'TRC' )  ! add the mle transport 
     120         IF( ln_mle    )   CALL tra_mle_trp( kt, nittrc000, zun, zvn, zwn, 'TRC', Kmm      )  ! add the mle transport 
    121121         ! 
    122122      ENDIF 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trcbbl.F90

    r10946 r10954  
    3636CONTAINS 
    3737 
    38    SUBROUTINE trc_bbl( kt, Kmm, Krhs ) 
     38   SUBROUTINE trc_bbl( kt, Kbb, Kmm, Krhs ) 
    3939      !!---------------------------------------------------------------------- 
    4040      !!                  ***  ROUTINE bbl  *** 
     
    4646      !!----------------------------------------------------------------------   
    4747      INTEGER, INTENT( in ) ::   kt   ! ocean time-step  
    48       INTEGER, INTENT( in ) ::   Kmm, Krhs  ! time level indices 
     48      INTEGER, INTENT( in ) ::   Kbb, Kmm, Krhs  ! time level indices 
    4949      INTEGER :: jn                   ! loop index 
    5050      CHARACTER (len=22) :: charout 
     
    5555      ! 
    5656      IF( .NOT. l_offline .AND. nn_dttrc == 1 ) THEN 
    57          CALL bbl( kt, nittrc000, 'TRC' )      ! Online coupling with dynamics  : Computation of bbl coef and bbl transport 
    58          l_bbl = .FALSE.                       ! Offline coupling with dynamics : Read bbl coef and bbl transport from input files 
     57         CALL bbl( kt, nittrc000, 'TRC', Kbb, Kmm )  ! Online coupling with dynamics  : Computation of bbl coef and bbl transport 
     58         l_bbl = .FALSE.                             ! Offline coupling with dynamics : Read bbl coef and bbl transport from input files 
    5959      ENDIF 
    6060 
     
    6767      IF( nn_bbl_ldf == 1 ) THEN 
    6868         ! 
    69          CALL tra_bbl_dif( trb, tra, jptra 
     69         CALL tra_bbl_dif( trb, tra, jptra, Kmm 
    7070         IF( ln_ctl )   THEN 
    7171            WRITE(charout, FMT="(' bbl_dif')")  ;  CALL prt_ctl_trc_info(charout) 
     
    7878      IF( nn_bbl_adv /= 0 ) THEN 
    7979         ! 
    80          CALL tra_bbl_adv( trb, tra, jptra 
     80         CALL tra_bbl_adv( trb, tra, jptra, Kmm 
    8181         IF( ln_ctl )   THEN 
    8282            WRITE(charout, FMT="(' bbl_adv')")  ;  CALL prt_ctl_trc_info(charout) 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trcldf.F90

    r10946 r10954  
    9494      ! 
    9595      CASE ( np_lap   )                               ! iso-level laplacian 
    96          CALL tra_ldf_lap  ( kt, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, trb,      tra, jptra,    1    ) 
     96         CALL tra_ldf_lap  ( kt, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, trb,      tra, jptra,    1    , Kmm ) 
    9797      CASE ( np_lap_i )                               ! laplacian : standard iso-neutral operator (Madec) 
    98          CALL tra_ldf_iso  ( kt, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, trb, trb, tra, jptra,    1    ) 
     98         CALL tra_ldf_iso  ( kt, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, trb, trb, tra, jptra,    1    , Kmm ) 
    9999      CASE ( np_lap_it )                              ! laplacian : triad iso-neutral operator (griffies) 
    100100         CALL tra_ldf_triad( kt, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, trb, trb, tra, jptra,    1    , Kmm ) 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trcnxt.F90

    r10946 r10954  
    5454CONTAINS 
    5555 
    56    SUBROUTINE trc_nxt( kt, Kmm, Krhs ) 
     56   SUBROUTINE trc_nxt( kt, Kbb, Kmm, Krhs ) 
    5757      !!---------------------------------------------------------------------- 
    5858      !!                   ***  ROUTINE trcnxt  *** 
     
    7979      !!---------------------------------------------------------------------- 
    8080      INTEGER, INTENT( in ) ::   kt     ! ocean time-step index 
    81       INTEGER, INTENT( in ) ::   Kmm, Krhs  ! time level indices 
     81      INTEGER, INTENT( in ) ::   Kbb, Kmm, Krhs  ! time level indices 
    8282      ! 
    8383      INTEGER  ::   jk, jn   ! dummy loop indices 
     
    157157      ELSE      
    158158         IF( .NOT. l_offline ) THEN ! Leap-Frog + Asselin filter time stepping 
    159             IF( ln_linssh ) THEN   ;   CALL tra_nxt_fix( kt, nittrc000,         'TRC', trb, trn, tra, jptra )  !     linear ssh 
    160             ELSE                   ;   CALL tra_nxt_vvl( kt, Kmm, Krhs, nittrc000, rdttrc, 'TRC', trb, trn, tra,      & 
    161               &                                                                   sbc_trc, sbc_trc_b, jptra )  ! non-linear ssh 
     159            IF( ln_linssh ) THEN   ;   CALL tra_nxt_fix( kt,      Kmm,       nittrc000,         'TRC', trb, trn, tra, jptra )  !     linear ssh 
     160            ELSE                   ;   CALL tra_nxt_vvl( kt, Kbb, Kmm, Krhs, nittrc000, rdttrc, 'TRC', trb, trn, tra,      & 
     161              &                                                                                   sbc_trc, sbc_trc_b, jptra )  ! non-linear ssh 
    162162            ENDIF 
    163163         ELSE 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trctrp.F90

    r10946 r10954  
    6262         ! 
    6363                                CALL trc_sbc    ( kt, Kmm, Krhs )      ! surface boundary condition 
    64          IF( ln_trabbl )        CALL trc_bbl    ( kt, Kmm, Krhs )      ! advective (and/or diffusive) bottom boundary layer scheme 
     64         IF( ln_trabbl )        CALL trc_bbl    ( kt, Kbb, Kmm, Krhs ) ! advective (and/or diffusive) bottom boundary layer scheme 
    6565         IF( ln_trcdmp )        CALL trc_dmp    ( kt, Kmm, Krhs )      ! internal damping trends 
    6666         IF( ln_bdy )           CALL trc_bdy_dmp( kt )                 ! BDY damping trends 
     
    6868         !                                                             ! Partial top/bottom cell: GRADh( trb )   
    6969         IF( ln_zps ) THEN 
    70            IF( ln_isfcav ) THEN ; CALL zps_hde_isf( kt, jptra, trb, pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi )  ! both top & bottom 
    71            ELSE                 ; CALL zps_hde    ( kt, jptra, trb, gtru, gtrv )                                      !  only bottom 
     70           IF( ln_isfcav ) THEN ; CALL zps_hde_isf( kt, Kmm, jptra, trb, pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi )  ! both top & bottom 
     71           ELSE                 ; CALL zps_hde    ( kt, Kmm, jptra, trb, gtru, gtrv )                                      !  only bottom 
    7272           ENDIF 
    7373         ENDIF 
     
    7878#endif 
    7979                                CALL trc_zdf( kt, Kbb, Kmm, Krhs, tr, Kaa  )  ! vert. mixing & after tracer ==> after 
    80                                 CALL trc_nxt    ( kt, Kmm, Krhs )        ! tracer fields at next time step      
     80                                CALL trc_nxt    ( kt, Kbb, Kmm, Krhs )        ! tracer fields at next time step      
    8181         IF( ln_trcrad )        CALL trc_rad    ( kt, Kmm, Krhs )        ! Correct artificial negative concentrations 
    8282         IF( ln_trcdmp_clo )    CALL trc_dmp_clo( kt )                   ! internal damping trends on closed seas only 
     
    8787         IF( ln_trcdmp )        CALL trc_dmp( kt, Kmm, Krhs )            ! internal damping trends 
    8888                                CALL trc_zdf( kt, Kbb, Kmm, Krhs, tr, Kaa  )  ! vert. mixing & after tracer ==> after 
    89                                 CALL trc_nxt( kt, Kmm, Krhs )            ! tracer fields at next time step      
     89                                CALL trc_nxt( kt, Kbb, Kmm, Krhs )       ! tracer fields at next time step      
    9090          IF( ln_trcrad )       CALL trc_rad( kt, Kmm, Krhs )            ! Correct artificial negative concentrations 
    9191         ! 
Note: See TracChangeset for help on using the changeset viewer.