- Timestamp:
- 2015-12-15T10:46:14+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2015/dev_CMCC_merge_2015/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_ubs.F90
r5930 r6051 85 85 INTEGER , INTENT(in ) :: kjpt ! number of tracers 86 86 INTEGER , INTENT(in ) :: kn_ubs_v ! number of tracers 87 REAL(wp) , DIMENSION( jpk ), INTENT(in ) :: p2dt ! vertical profile oftracer time-step87 REAL(wp) , INTENT(in ) :: p2dt ! tracer time-step 88 88 REAL(wp), DIMENSION(jpi,jpj,jpk ), INTENT(in ) :: pun, pvn, pwn ! 3 ocean transport components 89 89 REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt), INTENT(in ) :: ptb, ptn ! before and now tracer fields … … 91 91 ! 92 92 INTEGER :: ji, jj, jk, jn ! dummy loop indices 93 REAL(wp) :: ztra, zbtr, zcoef , z2dtt! local scalars93 REAL(wp) :: ztra, zbtr, zcoef ! local scalars 94 94 REAL(wp) :: zfp_ui, zfm_ui, zcenut, ztak, zfp_wk, zfm_wk ! - - 95 95 REAL(wp) :: zfp_vj, zfm_vj, zcenvt, zeeu, zeev, z_hdivn ! - - … … 212 212 ! 213 213 DO jk = 1, jpkm1 !* trend and after field with monotonic scheme 214 z2dtt = p2dt(jk)215 214 DO jj = 2, jpjm1 216 215 DO ji = fs_2, fs_jpim1 ! vector opt. 217 216 ztak = - ( ztw(ji,jj,jk) - ztw(ji,jj,jk+1) ) / ( e1e2t(ji,jj) * fse3t_n(ji,jj,jk) ) 218 217 pta(ji,jj,jk,jn) = pta(ji,jj,jk,jn) + ztak 219 zti(ji,jj,jk) = ( ptb(ji,jj,jk,jn) + z2dtt * ( ztak + zltu(ji,jj,jk) ) ) * tmask(ji,jj,jk)218 zti(ji,jj,jk) = ( ptb(ji,jj,jk,jn) + p2dt * ( ztak + zltu(ji,jj,jk) ) ) * tmask(ji,jj,jk) 220 219 END DO 221 220 END DO … … 293 292 !! in-space based differencing for fluid 294 293 !!---------------------------------------------------------------------- 295 REAL(wp), INTENT(in ) , DIMENSION(jpk) :: p2dt ! vertical profile oftracer time-step294 REAL(wp), INTENT(in ) :: p2dt ! tracer time-step 296 295 REAL(wp), DIMENSION (jpi,jpj,jpk) :: pbef ! before field 297 296 REAL(wp), INTENT(inout), DIMENSION (jpi,jpj,jpk) :: paft ! after field … … 300 299 INTEGER :: ji, jj, jk ! dummy loop indices 301 300 INTEGER :: ikm1 ! local integer 302 REAL(wp) :: zpos, zneg, zbt, za, zb, zc, zbig, zrtrn , z2dtt! local scalars301 REAL(wp) :: zpos, zneg, zbt, za, zb, zc, zbig, zrtrn ! local scalars 303 302 REAL(wp), POINTER, DIMENSION(:,:,:) :: zbetup, zbetdo 304 303 !!---------------------------------------------------------------------- … … 349 348 ! --------------------------------------------------- 350 349 DO jk = 1, jpkm1 351 z2dtt = p2dt(jk)352 350 DO jj = 2, jpjm1 353 351 DO ji = fs_2, fs_jpim1 ! vector opt. … … 356 354 zneg = MAX( 0., pcc(ji ,jj ,jk ) ) - MIN( 0., pcc(ji ,jj ,jk+1) ) 357 355 ! up & down beta terms 358 zbt = e1e2t(ji,jj) * fse3t(ji,jj,jk) / z2dtt356 zbt = e1e2t(ji,jj) * fse3t(ji,jj,jk) / p2dt 359 357 zbetup(ji,jj,jk) = ( zbetup(ji,jj,jk) - paft(ji,jj,jk) ) / (zpos+zrtrn) * zbt 360 358 zbetdo(ji,jj,jk) = ( paft(ji,jj,jk) - zbetdo(ji,jj,jk) ) / (zneg+zrtrn) * zbt
Note: See TracChangeset
for help on using the changeset viewer.