Changeset 14219 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP
- Timestamp:
- 2020-12-18T18:52:57+01:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcadv.F90
r14086 r14219 63 63 64 64 # include "domzgr_substitute.h90" 65 # include "single_precision_substitute.h90" 65 66 !!---------------------------------------------------------------------- 66 67 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 80 81 INTEGER , INTENT(in) :: kt ! ocean time-step index 81 82 INTEGER , INTENT(in) :: Kbb, Kmm, Krhs ! time level indices 82 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation83 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 83 84 ! 84 85 INTEGER :: jk ! dummy loop index … … 127 128 ! 128 129 CASE ( np_CEN ) ! Centered : 2nd / 4th order 129 IF (nn_hls.EQ.2) CALL lbc_lnk( 'trcadv', ptr(:,:,:,:,Kmm), 'T', 1. )130 IF (nn_hls.EQ.2) CALL lbc_lnk( 'trcadv', ptr(:,:,:,:,Kmm), 'T', 1._wp) 130 131 CALL tra_adv_cen( kt, nittrc000,'TRC', zuu, zvv, zww, Kmm, ptr, jptra, Krhs, nn_cen_h, nn_cen_v ) 131 132 CASE ( np_FCT ) ! FCT : 2nd / 4th order 132 133 IF (nn_hls.EQ.2) THEN 133 CALL lbc_lnk_multi( 'trcadv', ptr(:,:,:,:,Kbb), 'T', 1. , ptr(:,:,:,:,Kmm), 'T', 1.)134 CALL lbc_lnk_multi( 'traadv', zuu(:,:,:), 'U', -1. , zvv(:,:,:), 'V', -1., zww(:,:,:), 'W', 1.)134 CALL lbc_lnk_multi( 'trcadv', ptr(:,:,:,:,Kbb), 'T', 1._wp, ptr(:,:,:,:,Kmm), 'T', 1._wp) 135 CALL lbc_lnk_multi( 'traadv', zuu(:,:,:), 'U', -1._wp, zvv(:,:,:), 'V', -1._wp, zww(:,:,:), 'W', 1._wp) 135 136 #if defined key_loop_fusion 136 137 CALL tra_adv_fct_lf( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, nn_fct_h, nn_fct_v ) … … 143 144 CASE ( np_MUS ) ! MUSCL 144 145 IF (nn_hls.EQ.2) THEN 145 IF (nn_hls.EQ.2) CALL lbc_lnk( 'trcadv', ptr(:,:,:,:,Kbb), 'T', 1. )146 IF (nn_hls.EQ.2) CALL lbc_lnk( 'trcadv', ptr(:,:,:,:,Kbb), 'T', 1._wp) 146 147 #if defined key_loop_fusion 147 148 CALL tra_adv_mus_lf( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, ln_mus_ups ) … … 153 154 END IF 154 155 CASE ( np_UBS ) ! UBS 155 IF (nn_hls.EQ.2) CALL lbc_lnk( 'trcadv', ptr(:,:,:,:,Kbb), 'T', 1. )156 IF (nn_hls.EQ.2) CALL lbc_lnk( 'trcadv', ptr(:,:,:,:,Kbb), 'T', 1._wp) 156 157 CALL tra_adv_ubs( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, nn_ubs_v ) 157 158 CASE ( np_QCK ) ! QUICKEST 158 159 IF (nn_hls.EQ.2) THEN 159 CALL lbc_lnk_multi( 'trcadv', zuu(:,:,:), 'U', -1. , zvv(:,:,:), 'V', -1.)160 CALL lbc_lnk( 'traadv', ptr(:,:,:,:,Kbb), 'T', 1. )160 CALL lbc_lnk_multi( 'trcadv', zuu(:,:,:), 'U', -1._wp, zvv(:,:,:), 'V', -1._wp) 161 CALL lbc_lnk( 'traadv', ptr(:,:,:,:,Kbb), 'T', 1._wp) 161 162 END IF 162 163 CALL tra_adv_qck( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs ) … … 167 168 WRITE(charout, FMT="('adv ')") 168 169 CALL prt_ctl_info( charout, cdcomp = 'top' ) 169 CALL prt_ctl( tab4d_1= tr(:,:,:,:,Krhs), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )170 CALL prt_ctl( tab4d_1=CASTWP(tr(:,:,:,:,Krhs)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 170 171 END IF 171 172 ! -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcatf.F90
r14200 r14219 56 56 # include "do_loop_substitute.h90" 57 57 # include "domzgr_substitute.h90" 58 # include "single_precision_substitute.h90" 58 59 !!---------------------------------------------------------------------- 59 60 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 84 85 INTEGER , INTENT( in ) :: kt ! ocean time-step index 85 86 INTEGER , INTENT( in ) :: Kbb, Kmm, Kaa ! time level indices 86 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers87 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers 87 88 ! 88 89 INTEGER :: jk, jn ! dummy loop indices … … 162 163 # else 163 164 IF( ln_linssh ) THEN ; CALL tra_atf_fix( kt, Kbb, Kmm, Kaa, nittrc000, 'TRC', ptr, jptra ) ! linear ssh 164 ELSE ; CALL tra_atf_vvl( kt, Kbb, Kmm, Kaa, nittrc000, rn_Dt, 'TRC', ptr, sbc_trc, sbc_trc_b, jptra ) ! non-linear ssh165 ELSE ; CALL tra_atf_vvl( kt, Kbb, Kmm, Kaa, nittrc000, CASTWP(rn_Dt), 'TRC', ptr, sbc_trc, sbc_trc_b, jptra ) ! non-linear ssh 165 166 # endif 166 167 ENDIF … … 186 187 WRITE(charout, FMT="('nxt')") 187 188 CALL prt_ctl_info( charout, cdcomp = 'top' ) 188 CALL prt_ctl(tab4d_1= ptr(:,:,:,:,Kmm), mask1=tmask, clinfo=ctrcnm)189 CALL prt_ctl(tab4d_1=CASTWP(ptr(:,:,:,:,Kmm)), mask1=tmask, clinfo=ctrcnm) 189 190 ENDIF 190 191 ! … … 221 222 INTEGER , INTENT(in ) :: kt ! ocean time-step index 222 223 INTEGER , INTENT(in ) :: Kbb, Kmm, Kaa ! time level indices 223 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers224 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers 224 225 !! 225 226 INTEGER :: ji, jj, jk, jn ! dummy loop indices … … 294 295 INTEGER , INTENT(in ) :: kt ! ocean time-step index 295 296 INTEGER , INTENT(in ) :: Kbb, Kmm, Kaa ! time level indices 296 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers297 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers 297 298 !! 298 299 INTEGER :: ji, jj, jk, jn ! dummy loop indices -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcbbl.F90
r14086 r14219 30 30 PUBLIC trc_bbl ! routine called by trctrp.F90 31 31 32 # include "single_precision_substitute.h90" 32 33 !!---------------------------------------------------------------------- 33 34 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 48 49 INTEGER, INTENT( in ) :: kt ! ocean time-step 49 50 INTEGER, INTENT( in ) :: Kbb, Kmm, Krhs ! time level indices 50 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation51 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 51 52 INTEGER :: jn ! loop index 52 53 CHARACTER (len=22) :: charout … … 69 70 IF( nn_bbl_ldf == 1 ) THEN 70 71 ! 71 CALL tra_bbl_dif( ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Krhs), jptra, Kmm )72 CALL tra_bbl_dif( CASTWP(ptr(:,:,:,:,Kbb)), ptr(:,:,:,:,Krhs), jptra, Kmm ) 72 73 IF( sn_cfctl%l_prttrc ) THEN 73 74 WRITE(charout, FMT="(' bbl_dif')") ; CALL prt_ctl_info( charout, cdcomp = 'top' ) 74 CALL prt_ctl( tab4d_1= ptr(:,:,:,:,Krhs), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )75 CALL prt_ctl( tab4d_1=CASTWP(ptr(:,:,:,:,Krhs)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 75 76 ENDIF 76 77 ! … … 80 81 IF( nn_bbl_adv /= 0 ) THEN 81 82 ! 82 CALL tra_bbl_adv( ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Krhs), jptra, Kmm )83 CALL tra_bbl_adv( CASTWP(ptr(:,:,:,:,Kbb)), ptr(:,:,:,:,Krhs), jptra, Kmm ) 83 84 IF( sn_cfctl%l_prttrc ) THEN 84 85 WRITE(charout, FMT="(' bbl_adv')") ; CALL prt_ctl_info( charout, cdcomp = 'top' ) 85 CALL prt_ctl( tab4d_1= ptr(:,:,:,:,Krhs), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )86 CALL prt_ctl( tab4d_1=CASTWP(ptr(:,:,:,:,Krhs)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 86 87 ENDIF 87 88 ! -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcdmp.F90
r14086 r14219 47 47 # include "do_loop_substitute.h90" 48 48 # include "domzgr_substitute.h90" 49 # include "single_precision_substitute.h90" 49 50 !!---------------------------------------------------------------------- 50 51 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 86 87 INTEGER, INTENT(in ) :: kt ! ocean time-step index 87 88 INTEGER, INTENT(in ) :: Kbb, Kmm, Krhs ! time level indices 88 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation89 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 89 90 ! 90 91 INTEGER :: ji, jj, jk, jn, jl ! dummy loop indices 91 92 CHARACTER (len=22) :: charout 92 93 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: ztrtrd 93 REAL( wp), ALLOCATABLE, DIMENSION(:,:,:) :: ztrcdta ! 3D workspace94 REAL(dp), ALLOCATABLE, DIMENSION(:,:,:) :: ztrcdta ! 3D workspace 94 95 !!---------------------------------------------------------------------- 95 96 ! … … 151 152 WRITE(charout, FMT="('dmp ')") 152 153 CALL prt_ctl_info( charout, cdcomp = 'top' ) 153 CALL prt_ctl( tab4d_1= ptr(:,:,:,:,Krhs), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )154 CALL prt_ctl( tab4d_1=CASTWP(ptr(:,:,:,:,Krhs)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 154 155 ENDIF 155 156 ! … … 231 232 INTEGER :: ji , jj, jk, jn, jl, jc ! dummy loop indicesa 232 233 INTEGER :: isrow ! local index 233 REAL( wp), POINTER, DIMENSION(:,:,:) :: ztrcdta ! 3D workspace234 REAL(dp), POINTER, DIMENSION(:,:,:) :: ztrcdta ! 3D workspace 234 235 !!---------------------------------------------------------------------- 235 236 -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcldf.F90
r14086 r14219 46 46 # include "do_loop_substitute.h90" 47 47 # include "domzgr_substitute.h90" 48 # include "single_precision_substitute.h90" 48 49 !!---------------------------------------------------------------------- 49 50 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 62 63 INTEGER, INTENT(in ) :: kt ! ocean time-step index 63 64 INTEGER, INTENT(in ) :: Kbb, Kmm, Krhs ! ocean time-level index 64 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation65 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 65 66 ! 66 67 INTEGER :: ji, jj, jk, jn … … 94 95 CASE ( np_lap ) ! iso-level laplacian 95 96 CALL tra_ldf_lap ( kt, Kmm, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, & 96 & ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Krhs), jptra, 1 )97 & CASTWP(ptr(:,:,:,:,Kbb)), ptr(:,:,:,:,Krhs), jptra, 1 ) 97 98 CASE ( np_lap_i ) ! laplacian : standard iso-neutral operator (Madec) 98 99 CALL tra_ldf_iso ( kt, Kmm, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, & 99 & ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Krhs), jptra, 1 )100 & CASTWP(ptr(:,:,:,:,Kbb)), CASTWP(ptr(:,:,:,:,Kbb)), ptr(:,:,:,:,Krhs), jptra, 1 ) 100 101 CASE ( np_lap_it ) ! laplacian : triad iso-neutral operator (griffies) 101 102 CALL tra_ldf_triad( kt, Kmm, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, & 102 & ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Kbb), ptr(:,:,:,:,Krhs), jptra, 1 )103 & CASTWP(ptr(:,:,:,:,Kbb)), CASTWP(ptr(:,:,:,:,Kbb)), ptr(:,:,:,:,Krhs), jptra, 1 ) 103 104 CASE ( np_blp , np_blp_i , np_blp_it ) ! bilaplacian: all operator (iso-level, -neutral) 104 IF(nn_hls.EQ.2) CALL lbc_lnk( 'trc_ldf', ptr(:,:,:,:,Kbb), 'T',1. )105 IF(nn_hls.EQ.2) CALL lbc_lnk( 'trc_ldf', ptr(:,:,:,:,Kbb), 'T',1._wp) 105 106 CALL tra_ldf_blp ( kt, Kmm, nittrc000,'TRC', zahu, zahv, gtru, gtrv, gtrui, gtrvi, & 106 & ptr(:,:,:,:,Kbb) , ptr(:,:,:,:,Krhs), jptra, nldf_trc )107 & CASTWP(ptr(:,:,:,:,Kbb)) , ptr(:,:,:,:,Krhs), jptra, nldf_trc ) 107 108 END SELECT 108 109 ! … … 118 119 WRITE(charout, FMT="('ldf ')") 119 120 CALL prt_ctl_info( charout, cdcomp = 'top' ) 120 CALL prt_ctl( tab4d_1= ptr(:,:,:,:,Krhs), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )121 CALL prt_ctl( tab4d_1=CASTWP(ptr(:,:,:,:,Krhs)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 121 122 ENDIF 122 123 ! -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcrad.F90
r13324 r14219 33 33 !! * Substitutions 34 34 # include "do_loop_substitute.h90" 35 # include "single_precision_substitute.h90" 35 36 !!---------------------------------------------------------------------- 36 37 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 57 58 INTEGER, INTENT(in ) :: kt ! ocean time-step index 58 59 INTEGER, INTENT(in ) :: Kbb, Kmm ! time level indices 59 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation60 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 60 61 ! 61 62 CHARACTER (len=22) :: charout … … 73 74 WRITE(charout, FMT="('rad')") 74 75 CALL prt_ctl_info( charout, cdcomp = 'top' ) 75 CALL prt_ctl( tab4d_1= ptr(:,:,:,:,Kbb), mask1=tmask, clinfo=ctrcnm )76 CALL prt_ctl( tab4d_1=CASTWP(ptr(:,:,:,:,Kbb)), mask1=tmask, clinfo=ctrcnm ) 76 77 ENDIF 77 78 ! … … 135 136 INTEGER , INTENT(in ) :: Kbb, Kmm ! time level indices 136 137 INTEGER , INTENT(in ) :: jp_sms0, jp_sms1 ! First & last index of the passive tracer model 137 REAL( wp), DIMENSION (jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! before and now traceur concentration138 REAL(dp), DIMENSION (jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! before and now traceur concentration 138 139 CHARACTER( len = 1), OPTIONAL , INTENT(in ) :: cpreserv ! flag to preserve content or not 139 140 ! -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trcsbc.F90
r14086 r14219 32 32 # include "do_loop_substitute.h90" 33 33 # include "domzgr_substitute.h90" 34 # include "single_precision_substitute.h90" 34 35 !!---------------------------------------------------------------------- 35 36 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 62 63 INTEGER, INTENT(in ) :: kt ! ocean time-step index 63 64 INTEGER, INTENT(in ) :: Kmm, Krhs ! time level indices 64 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation65 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 65 66 ! 66 67 INTEGER :: ji, jj, jn ! dummy loop indices … … 189 190 IF( sn_cfctl%l_prttrc ) THEN 190 191 WRITE(charout, FMT="('sbc ')") ; CALL prt_ctl_info( charout, cdcomp = 'top' ) 191 CALL prt_ctl( tab4d_1= ptr(:,:,:,:,Krhs), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )192 CALL prt_ctl( tab4d_1=CASTWP(ptr(:,:,:,:,Krhs)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 192 193 ENDIF 193 194 IF( l_trdtrc ) DEALLOCATE( ztrtrd ) -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trctrp.F90
r14086 r14219 40 40 PUBLIC trc_trp ! called by trc_stp 41 41 42 # include "single_precision_substitute.h90" 42 43 !!---------------------------------------------------------------------- 43 44 !! NEMO/TOP 4.0 , NEMO Consortium (2018) -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trczdf.F90
r14086 r14219 27 27 PUBLIC trc_zdf ! called by step.F90 28 28 29 # include "single_precision_substitute.h90" 29 30 !!---------------------------------------------------------------------- 30 31 !! NEMO/TOP 4.0 , NEMO Consortium (2018) … … 43 44 INTEGER , INTENT(in ) :: kt ! ocean time-step index 44 45 INTEGER , INTENT(in ) :: Kbb, Kmm, Krhs, Kaa ! ocean time level indices 45 REAL( wp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation46 REAL(dp), DIMENSION(jpi,jpj,jpk,jptra,jpt), INTENT(inout) :: ptr ! passive tracers and RHS of tracer equation 46 47 ! 47 48 INTEGER :: jk, jn … … 68 69 WRITE(charout, FMT="('zdf ')") 69 70 CALL prt_ctl_info( charout, cdcomp = 'top' ) 70 CALL prt_ctl( tab4d_1= tr(:,:,:,:,Kaa), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' )71 CALL prt_ctl( tab4d_1=CASTWP(tr(:,:,:,:,Kaa)), mask1=tmask, clinfo=ctrcnm, clinfo3='trd' ) 71 72 END IF 72 73 ! -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trdmxl_trc.F90
r13497 r14219 419 419 !-- Lateral boundary conditions 420 420 IF ( cn_cfg .NE. 'gyre' ) THEN 421 CALL lbc_lnk_multi( 'trdmxl_trc', ztmltot(:,:,jn) , 'T', 1. , ztmlres(:,:,jn) , 'T', 1., &422 & ztmlatf(:,:,jn) , 'T', 1. , ztmlrad(:,:,jn) , 'T', 1.)421 CALL lbc_lnk_multi( 'trdmxl_trc', ztmltot(:,:,jn) , 'T', 1._wp , ztmlres(:,:,jn) , 'T', 1._wp, & 422 & ztmlatf(:,:,jn) , 'T', 1._wp , ztmlrad(:,:,jn) , 'T', 1._wp ) 423 423 ENDIF 424 424 … … 470 470 !-- Lateral boundary conditions 471 471 IF ( cn_cfg .NE. 'gyre' ) THEN ! other than GYRE configuration 472 CALL lbc_lnk_multi( 'trdmxl_trc', ztmltot2(:,:,jn), 'T', 1., ztmlres2(:,:,jn), 'T', 1. 472 CALL lbc_lnk_multi( 'trdmxl_trc', ztmltot2(:,:,jn), 'T', 1., ztmlres2(:,:,jn), 'T', 1.) 473 473 DO jl = 1, jpltrd_trc 474 474 CALL lbc_lnk( 'trdmxl_trc', ztmltrd2(:,:,jl,jn), 'T', 1. ) ! will be output in the NetCDF trends file … … 986 986 !!====================================================================== 987 987 END MODULE trdmxl_trc 988 -
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/TOP/TRP/trdtrc.F90
r13226 r14219 41 41 INTEGER, INTENT( in ) :: kjn ! tracer index 42 42 INTEGER, INTENT( in ) :: ktrd ! tracer trend index 43 REAL( wp), DIMENSION(jpi,jpj,jpk), INTENT( inout ) :: ptrtrd ! Temperature or U trend43 REAL(dp), DIMENSION(jpi,jpj,jpk), INTENT( inout ) :: ptrtrd ! Temperature or U trend 44 44 CHARACTER (len=20) :: cltra 45 45 !!---------------------------------------------------------------------- … … 119 119 INTEGER , INTENT( in ) :: kjn ! tracer index 120 120 INTEGER , INTENT( in ) :: ktrd ! tracer trend index 121 REAL( wp), DIMENSION(:,:,:), INTENT( inout ) :: ptrtrd ! Temperature or U trend121 REAL(dp), DIMENSION(:,:,:), INTENT( inout ) :: ptrtrd ! Temperature or U trend 122 122 WRITE(*,*) 'trd_trc : You should not have seen this print! error?', ptrtrd(1,1,1) 123 123 WRITE(*,*) ' " " : You should not have seen this print! error?', kjn
Note: See TracChangeset
for help on using the changeset viewer.