Ignore:
Timestamp:
2019-05-10T18:43:09+02:00 (19 months 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/trctrp.F90

    r10963 r10966  
    6161      IF( .NOT. lk_c1d ) THEN 
    6262         ! 
    63                                 CALL trc_sbc    ( kt, Kmm, Krhs )      ! surface boundary condition 
    64          IF( ln_trabbl )        CALL trc_bbl    ( kt, Kbb, Kmm, Krhs ) ! advective (and/or diffusive) bottom boundary layer scheme 
    65          IF( ln_trcdmp )        CALL trc_dmp    ( kt, Kmm, Krhs )      ! internal damping trends 
    66          IF( ln_bdy )           CALL trc_bdy_dmp( kt, Kbb,      Krhs ) ! BDY damping trends 
    67                                 CALL trc_adv    ( kt, Kbb, Kmm, tr, Krhs )      ! horizontal & vertical advection  
    68          !                                                             ! Partial top/bottom cell: GRADh( trb 
     63                                CALL trc_sbc    ( kt,      Kmm, Krhs )      ! surface boundary condition 
     64         IF( ln_trabbl )        CALL trc_bbl    ( kt, Kbb, Kmm, Krhs )      ! advective (and/or diffusive) bottom boundary layer scheme 
     65         IF( ln_trcdmp )        CALL trc_dmp    ( kt, Kbb, Kmm, Krhs )      ! internal damping trends 
     66         IF( ln_bdy )           CALL trc_bdy_dmp( kt, Kbb,      Krhs )      ! BDY damping trends 
     67                                CALL trc_adv    ( kt, Kbb, Kmm, tr, Krhs )  ! horizontal & vertical advection  
     68         !                                                             ! Partial top/bottom cell: GRADh( tr(Kbb) 
    6969         IF( ln_zps ) THEN 
    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 
     70           IF( ln_isfcav ) THEN ; CALL zps_hde_isf( kt, Kmm, jptra, tr(:,:,:,:,Kbb), pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi )  ! both top & bottom 
     71           ELSE                 ; CALL zps_hde    ( kt, Kmm, jptra, tr(:,:,:,:,Kbb), gtru, gtrv )                                      !  only bottom 
    7272           ENDIF 
    7373         ENDIF 
    7474         !                                                       
    75                                 CALL trc_ldf    ( kt, Kmm, Krhs ) ! lateral mixing 
     75                                CALL trc_ldf    ( kt, Kbb, Kmm, Krhs )    ! lateral mixing 
    7676#if defined key_agrif 
    7777         IF(.NOT. Agrif_Root()) CALL Agrif_Sponge_trc       ! tracers sponge 
    7878#endif 
    79                                 CALL trc_zdf( kt, Kbb, Kmm, Krhs, tr, Kaa  )  ! vert. mixing & after tracer ==> after 
    80                                 CALL trc_nxt    ( kt, Kbb, Kmm, Krhs )        ! tracer fields at next time step      
    81          IF( ln_trcrad )        CALL trc_rad    ( kt, Kmm, Krhs )             ! Correct artificial negative concentrations 
    82          IF( ln_trcdmp_clo )    CALL trc_dmp_clo( kt, Kmm )                   ! internal damping trends on closed seas only 
     79                                CALL trc_zdf    ( kt, Kbb, Kmm, Krhs, tr, Kaa  )  ! vert. mixing & after tracer   ==> after 
     80                                CALL trc_nxt    ( kt, Kbb, Kmm, Krhs )            ! tracer fields at next time step      
     81         IF( ln_trcrad )        CALL trc_rad    ( kt, Kbb, Kmm, Krhs )            ! Correct artificial negative concentrations 
     82         IF( ln_trcdmp_clo )    CALL trc_dmp_clo( kt, Kbb, Kmm )                  ! internal damping trends on closed seas only 
    8383 
    8484         ! 
    8585      ELSE                                               ! 1D vertical configuration 
    86                                 CALL trc_sbc( kt, Kmm, Krhs )            ! surface boundary condition 
    87          IF( ln_trcdmp )        CALL trc_dmp( kt, Kmm, Krhs )            ! internal damping trends 
     86                                CALL trc_sbc( kt,      Kmm, Krhs )            ! surface boundary condition 
     87         IF( ln_trcdmp )        CALL trc_dmp( kt, Kbb, 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, Kbb, Kmm, Krhs )       ! tracer fields at next time step      
    90           IF( ln_trcrad )       CALL trc_rad( kt, Kmm, Krhs )            ! Correct artificial negative concentrations 
     89                                CALL trc_nxt( kt, Kbb, Kmm, Krhs )            ! tracer fields at next time step      
     90          IF( ln_trcrad )       CALL trc_rad( kt, Kbb, Kmm, Krhs )            ! Correct artificial negative concentrations 
    9191         ! 
    9292      END IF 
Note: See TracChangeset for help on using the changeset viewer.