Changeset 14219 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/TRA/traadv.F90
- Timestamp:
- 2020-12-18T18:52:57+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/TRA/traadv.F90
r14200 r14219 73 73 # include "do_loop_substitute.h90" 74 74 # include "domzgr_substitute.h90" 75 # include "single_precision_substitute.h90" 75 76 !!---------------------------------------------------------------------- 76 77 !! NEMO/OCE 4.0 , NEMO Consortium (2018) … … 90 91 INTEGER , INTENT(in) :: kt ! ocean time-step index 91 92 INTEGER , INTENT(in) :: Kbb, Kmm, Krhs ! time level indices 92 REAL( wp), DIMENSION(jpi,jpj,jpk,jpts,jpt), INTENT(inout) :: pts ! active tracers and RHS of tracer equation93 REAL(dp), DIMENSION(jpi,jpj,jpk,jpts,jpt), INTENT(inout) :: pts ! active tracers and RHS of tracer equation 93 94 ! 94 95 INTEGER :: ji, jj, jk ! dummy loop index … … 178 179 ! 179 180 CASE ( np_CEN ) ! Centered scheme : 2nd / 4th order 180 IF (nn_hls.EQ.2) CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kmm), 'T', 1. )181 IF (nn_hls.EQ.2) CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kmm), 'T', 1._wp ) 181 182 CALL tra_adv_cen ( kt, nit000, 'TRA', zuu, zvv, zww, Kmm, pts, jpts, Krhs, nn_cen_h, nn_cen_v ) 182 183 CASE ( np_FCT ) ! FCT scheme : 2nd / 4th order 183 184 IF (nn_hls.EQ.2) THEN 184 CALL lbc_lnk_multi( 'traadv', pts(:,:,:,:,Kbb), 'T', 1. , pts(:,:,:,:,Kmm), 'T', 1.)185 CALL lbc_lnk_multi( 'traadv', zuu(:,:,:), 'U', -1. , zvv(:,:,:), 'V', -1., zww(:,:,:), 'W', 1.)185 CALL lbc_lnk_multi( 'traadv', pts(:,:,:,:,Kbb), 'T', 1._wp, pts(:,:,:,:,Kmm), 'T', 1._wp) 186 CALL lbc_lnk_multi( 'traadv', zuu(:,:,:), 'U', -1._wp, zvv(:,:,:), 'V', -1._wp, zww(:,:,:), 'W', 1._wp) 186 187 #if defined key_loop_fusion 187 188 CALL tra_adv_fct_lf ( kt, nit000, 'TRA', rDt, zuu, zvv, zww, Kbb, Kmm, pts, jpts, Krhs, nn_fct_h, nn_fct_v ) … … 194 195 CASE ( np_MUS ) ! MUSCL 195 196 IF (nn_hls.EQ.2) THEN 196 CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1. )197 CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1._wp) 197 198 #if defined key_loop_fusion 198 199 CALL tra_adv_mus_lf ( kt, nit000, 'TRA', rDt, zuu, zvv, zww, Kbb, Kmm, pts, jpts, Krhs, ln_mus_ups ) … … 204 205 END IF 205 206 CASE ( np_UBS ) ! UBS 206 IF (nn_hls.EQ.2) CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1. )207 IF (nn_hls.EQ.2) CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1._wp) 207 208 CALL tra_adv_ubs ( kt, nit000, 'TRA', rDt, zuu, zvv, zww, Kbb, Kmm, pts, jpts, Krhs, nn_ubs_v ) 208 209 CASE ( np_QCK ) ! QUICKEST 209 210 IF (nn_hls.EQ.2) THEN 210 CALL lbc_lnk_multi( 'traadv', zuu(:,:,:), 'U', -1. , zvv(:,:,:), 'V', -1.)211 CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1. )211 CALL lbc_lnk_multi( 'traadv', zuu(:,:,:), 'U', -1._wp, zvv(:,:,:), 'V', -1._wp) 212 CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1._wp) 212 213 END IF 213 214 CALL tra_adv_qck ( kt, nit000, 'TRA', rDt, zuu, zvv, zww, Kbb, Kmm, pts, jpts, Krhs ) … … 230 231 ENDIF 231 232 ! ! print mean trends (used for debugging) 232 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1= pts(:,:,:,jp_tem,Krhs), clinfo1=' adv - Ta: ', mask1=tmask, &233 & tab3d_2= pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' )233 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=CASTWP(pts(:,:,:,jp_tem,Krhs)), clinfo1=' adv - Ta: ', mask1=tmask, & 234 & tab3d_2=CASTWP(pts(:,:,:,jp_sal,Krhs)), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 234 235 235 236 ! TEMP: [tiling] This change not necessary if using XIOS (subdomain support)
Note: See TracChangeset
for help on using the changeset viewer.