Changeset 10954 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP
- Timestamp:
- 2019-05-09T18:12:29+02:00 (5 years ago)
- 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 118 118 & CALL ldf_eiv_trp( kt, nittrc000, zun, zvn, zwn, 'TRC', Kmm, Krhs ) ! add the eiv transport 119 119 ! 120 IF( ln_mle ) CALL tra_mle_trp( kt, nittrc000, zun, zvn, zwn, 'TRC' ) ! add the mle transport120 IF( ln_mle ) CALL tra_mle_trp( kt, nittrc000, zun, zvn, zwn, 'TRC', Kmm ) ! add the mle transport 121 121 ! 122 122 ENDIF -
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trcbbl.F90
r10946 r10954 36 36 CONTAINS 37 37 38 SUBROUTINE trc_bbl( kt, K mm, Krhs )38 SUBROUTINE trc_bbl( kt, Kbb, Kmm, Krhs ) 39 39 !!---------------------------------------------------------------------- 40 40 !! *** ROUTINE bbl *** … … 46 46 !!---------------------------------------------------------------------- 47 47 INTEGER, INTENT( in ) :: kt ! ocean time-step 48 INTEGER, INTENT( in ) :: K mm, Krhs ! time level indices48 INTEGER, INTENT( in ) :: Kbb, Kmm, Krhs ! time level indices 49 49 INTEGER :: jn ! loop index 50 50 CHARACTER (len=22) :: charout … … 55 55 ! 56 56 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 transport58 l_bbl = .FALSE. ! Offline coupling with dynamics : Read bbl coef and bbl transport from input files57 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 59 59 ENDIF 60 60 … … 67 67 IF( nn_bbl_ldf == 1 ) THEN 68 68 ! 69 CALL tra_bbl_dif( trb, tra, jptra )69 CALL tra_bbl_dif( trb, tra, jptra, Kmm ) 70 70 IF( ln_ctl ) THEN 71 71 WRITE(charout, FMT="(' bbl_dif')") ; CALL prt_ctl_trc_info(charout) … … 78 78 IF( nn_bbl_adv /= 0 ) THEN 79 79 ! 80 CALL tra_bbl_adv( trb, tra, jptra )80 CALL tra_bbl_adv( trb, tra, jptra, Kmm ) 81 81 IF( ln_ctl ) THEN 82 82 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 94 94 ! 95 95 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 ) 97 97 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 ) 99 99 CASE ( np_lap_it ) ! laplacian : triad iso-neutral operator (griffies) 100 100 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 54 54 CONTAINS 55 55 56 SUBROUTINE trc_nxt( kt, K mm, Krhs )56 SUBROUTINE trc_nxt( kt, Kbb, Kmm, Krhs ) 57 57 !!---------------------------------------------------------------------- 58 58 !! *** ROUTINE trcnxt *** … … 79 79 !!---------------------------------------------------------------------- 80 80 INTEGER, INTENT( in ) :: kt ! ocean time-step index 81 INTEGER, INTENT( in ) :: K mm, Krhs ! time level indices81 INTEGER, INTENT( in ) :: Kbb, Kmm, Krhs ! time level indices 82 82 ! 83 83 INTEGER :: jk, jn ! dummy loop indices … … 157 157 ELSE 158 158 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 ssh160 ELSE ; CALL tra_nxt_vvl( kt, K mm, Krhs, nittrc000, rdttrc, 'TRC', trb, trn, tra, &161 & sbc_trc, sbc_trc_b, jptra ) ! non-linear ssh159 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 162 162 ENDIF 163 163 ELSE -
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/TOP/TRP/trctrp.F90
r10946 r10954 62 62 ! 63 63 CALL trc_sbc ( kt, Kmm, Krhs ) ! surface boundary condition 64 IF( ln_trabbl ) CALL trc_bbl ( kt, K mm, Krhs )! advective (and/or diffusive) bottom boundary layer scheme64 IF( ln_trabbl ) CALL trc_bbl ( kt, Kbb, Kmm, Krhs ) ! advective (and/or diffusive) bottom boundary layer scheme 65 65 IF( ln_trcdmp ) CALL trc_dmp ( kt, Kmm, Krhs ) ! internal damping trends 66 66 IF( ln_bdy ) CALL trc_bdy_dmp( kt ) ! BDY damping trends … … 68 68 ! ! Partial top/bottom cell: GRADh( trb ) 69 69 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 & bottom71 ELSE ; CALL zps_hde ( kt, jptra, trb, gtru, gtrv ) ! only bottom70 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 72 72 ENDIF 73 73 ENDIF … … 78 78 #endif 79 79 CALL trc_zdf( kt, Kbb, Kmm, Krhs, tr, Kaa ) ! vert. mixing & after tracer ==> after 80 CALL trc_nxt ( kt, K mm, Krhs ) ! tracer fields at next time step80 CALL trc_nxt ( kt, Kbb, Kmm, Krhs ) ! tracer fields at next time step 81 81 IF( ln_trcrad ) CALL trc_rad ( kt, Kmm, Krhs ) ! Correct artificial negative concentrations 82 82 IF( ln_trcdmp_clo ) CALL trc_dmp_clo( kt ) ! internal damping trends on closed seas only … … 87 87 IF( ln_trcdmp ) CALL trc_dmp( kt, Kmm, Krhs ) ! internal damping trends 88 88 CALL trc_zdf( kt, Kbb, Kmm, Krhs, tr, Kaa ) ! vert. mixing & after tracer ==> after 89 CALL trc_nxt( kt, K mm, Krhs )! tracer fields at next time step89 CALL trc_nxt( kt, Kbb, Kmm, Krhs ) ! tracer fields at next time step 90 90 IF( ln_trcrad ) CALL trc_rad( kt, Kmm, Krhs ) ! Correct artificial negative concentrations 91 91 !
Note: See TracChangeset
for help on using the changeset viewer.