- Timestamp:
- 2019-11-22T15:29:17+01:00 (4 years ago)
- Location:
- NEMO/branches/2019/dev_r11943_MERGE_2019/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11943_MERGE_2019/src
- Property svn:mergeinfo deleted
-
NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/TRP/trdmxl_trc.F90
r11536 r11949 16 16 !! trd_mxl_trc_init : initialization step 17 17 !!---------------------------------------------------------------------- 18 USE trc ! tracer definitions (trn, trb, tra, etc.) 19 USE trc_oce, ONLY : nn_dttrc ! frequency of step on passive tracers 18 USE trc ! tracer definitions (tr etc.) 20 19 USE dom_oce ! domain definition 21 20 USE zdfmxl , ONLY : nmln ! number of level in the mixed layer … … 70 69 71 70 72 SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn )71 SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn, Kmm ) 73 72 !!---------------------------------------------------------------------- 74 73 !! *** ROUTINE trd_mxl_trc_zint *** … … 92 91 !! 93 92 INTEGER, INTENT( in ) :: ktrd, kjn ! ocean trend index and passive tracer rank 93 INTEGER, INTENT( in ) :: Kmm ! time level index 94 94 CHARACTER(len=2), INTENT( in ) :: ctype ! surface/bottom (2D) or interior (3D) physics 95 95 REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT( in ) :: ptrc_trdmxl ! passive tracer trend … … 150 150 DO jj = 1, jpj 151 151 DO ji = 1, jpi 152 IF( jk - nmld_trc(ji,jj) < 0 ) wkx_trc(ji,jj,jk) = e3t _n(ji,jj,jk) * tmask(ji,jj,jk)152 IF( jk - nmld_trc(ji,jj) < 0 ) wkx_trc(ji,jj,jk) = e3t(ji,jj,jk,Kmm) * tmask(ji,jj,jk) 153 153 END DO 154 154 END DO … … 183 183 184 184 185 SUBROUTINE trd_mxl_trc( kt )185 SUBROUTINE trd_mxl_trc( kt, Kmm ) 186 186 !!---------------------------------------------------------------------- 187 187 !! *** ROUTINE trd_mxl_trc *** … … 232 232 ! 233 233 INTEGER, INTENT(in) :: kt ! ocean time-step index 234 INTEGER, INTENT(in) :: Kmm ! time level index 234 235 ! 235 236 INTEGER :: ji, jj, jk, jl, ik, it, itmod, jn … … 251 252 252 253 253 IF( nn_dttrc /= 1 ) CALL ctl_stop( " Be careful, trends diags never validated " )254 255 254 ! ====================================================================== 256 255 ! I. Diagnose the purely vertical (K_z) diffusion trend … … 267 266 ik = nmld_trc(ji,jj) 268 267 IF( ln_trdtrc(jn) ) & 269 tmltrd_trc(ji,jj,jpmxl_trc_zdf,jn) = - avs(ji,jj,ik) / e3w _n(ji,jj,ik) * tmask(ji,jj,ik) &270 & * ( tr n(ji,jj,ik-1,jn) - trn(ji,jj,ik,jn) ) &268 tmltrd_trc(ji,jj,jpmxl_trc_zdf,jn) = - avs(ji,jj,ik) / e3w(ji,jj,ik,Kmm) * tmask(ji,jj,ik) & 269 & * ( tr(ji,jj,ik-1,jn,Kmm) - tr(ji,jj,ik,jn,Kmm) ) & 271 270 & / MAX( 1., rmld_trc(ji,jj) ) * tmask(ji,jj,1) 272 271 END DO … … 322 321 DO jn = 1, jptra 323 322 IF( ln_trdtrc(jn) ) & 324 tml_trc(:,:,jn) = tml_trc(:,:,jn) + wkx_trc(:,:,jk) * tr n(:,:,jk,jn)323 tml_trc(:,:,jn) = tml_trc(:,:,jn) + wkx_trc(:,:,jk) * tr(:,:,jk,jn,Kmm) 325 324 END DO 326 325 END DO … … 328 327 ! II.3 Initialize mixed-layer "before" arrays for the 1rst analysis window 329 328 ! ------------------------------------------------------------------------ 330 IF( kt == nittrc000 + nn_dttrc) THEN ! i.e. ( .NOT. ln_rstart ).AND.( kt == nit000 + 1) ???329 IF( kt == nittrc000 + 1 ) THEN ! i.e. ( .NOT. ln_rstart ).AND.( kt == nit000 + 1) ??? 331 330 ! 332 331 DO jn = 1, jptra … … 870 869 # endif 871 870 zout = nn_trd_trc * rdt 872 iiter = ( nittrc000 - 1 ) / nn_dttrc871 iiter = nittrc000 - 1 873 872 874 873 IF(lwp) WRITE (numout,*) ' netCDF initialization' … … 970 969 !!---------------------------------------------------------------------- 971 970 CONTAINS 972 SUBROUTINE trd_mxl_trc( kt ) ! Empty routine971 SUBROUTINE trd_mxl_trc( kt, Kmm ) ! Empty routine 973 972 INTEGER, INTENT( in) :: kt 973 INTEGER, INTENT( in) :: Kmm ! time level index 974 974 WRITE(*,*) 'trd_mxl_trc: You should not have seen this print! error?', kt 975 975 END SUBROUTINE trd_mxl_trc 976 SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn )976 SUBROUTINE trd_mxl_trc_zint( ptrc_trdmxl, ktrd, ctype, kjn, Kmm ) 977 977 INTEGER , INTENT( in ) :: ktrd, kjn ! ocean trend index and passive tracer rank 978 INTEGER , INTENT( in ) :: Kmm ! time level index 978 979 CHARACTER(len=2) , INTENT( in ) :: ctype ! surface/bottom (2D) or interior (3D) physics 979 980 REAL, DIMENSION(:,:,:), INTENT( in ) :: ptrc_trdmxl ! passive trc trend
Note: See TracChangeset
for help on using the changeset viewer.