Changeset 10806 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/TRA/traadv_ubs.F90
- Timestamp:
- 2019-03-27T17:55:22+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/TRA/traadv_ubs.F90
r10802 r10806 46 46 CONTAINS 47 47 48 SUBROUTINE tra_adv_ubs( kt, kit000, ktlev, cdtype, p2dt, pu, pv, pw n, &48 SUBROUTINE tra_adv_ubs( kt, kit000, ktlev, cdtype, p2dt, pu, pv, pw, & 49 49 & pt_lev1, pt_lev2, pt_rhs, kjpt, kn_ubs_v ) 50 50 !!---------------------------------------------------------------------- … … 91 91 INTEGER , INTENT(in ) :: kn_ubs_v ! number of tracers 92 92 REAL(wp) , INTENT(in ) :: p2dt ! tracer time-step 93 REAL(wp), DIMENSION(jpi,jpj,jpk ), INTENT(in ) :: pu, pv, pw n! 3 ocean transport components93 REAL(wp), DIMENSION(jpi,jpj,jpk ), INTENT(in ) :: pu, pv, pw ! 3 ocean transport components 94 94 REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt), INTENT(in ) :: pt_lev1, pt_lev2 ! before and now tracer fields 95 95 REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt), INTENT(inout) :: pt_rhs ! tracer trend … … 200 200 DO jj = 1, jpj 201 201 DO ji = 1, jpi 202 zfp_wk = pw n(ji,jj,jk) + ABS( pwn(ji,jj,jk) )203 zfm_wk = pw n(ji,jj,jk) - ABS( pwn(ji,jj,jk) )202 zfp_wk = pw(ji,jj,jk) + ABS( pw(ji,jj,jk) ) 203 zfm_wk = pw(ji,jj,jk) - ABS( pw(ji,jj,jk) ) 204 204 ztw(ji,jj,jk) = 0.5_wp * ( zfp_wk * pt_lev1(ji,jj,jk,jn) + zfm_wk * pt_lev1(ji,jj,jk-1,jn) ) * wmask(ji,jj,jk) 205 205 END DO … … 210 210 DO jj = 1, jpj 211 211 DO ji = 1, jpi 212 ztw(ji,jj, mikt(ji,jj) ) = pw n(ji,jj,mikt(ji,jj)) * pt_lev1(ji,jj,mikt(ji,jj),jn) ! linear free surface212 ztw(ji,jj, mikt(ji,jj) ) = pw(ji,jj,mikt(ji,jj)) * pt_lev1(ji,jj,mikt(ji,jj),jn) ! linear free surface 213 213 END DO 214 214 END DO 215 215 ELSE ! no cavities: only at the ocean surface 216 ztw(:,:,1) = pw n(:,:,1) * pt_lev1(:,:,1,jn)216 ztw(:,:,1) = pw(:,:,1) * pt_lev1(:,:,1,jn) 217 217 ENDIF 218 218 ENDIF … … 233 233 DO jj = 1, jpj 234 234 DO ji = 1, jpi 235 ztw(ji,jj,jk) = ( 0.5_wp * pw n(ji,jj,jk) * ( pt_lev2(ji,jj,jk,jn) + pt_lev2(ji,jj,jk-1,jn) ) &235 ztw(ji,jj,jk) = ( 0.5_wp * pw(ji,jj,jk) * ( pt_lev2(ji,jj,jk,jn) + pt_lev2(ji,jj,jk-1,jn) ) & 236 236 & - ztw(ji,jj,jk) ) * wmask(ji,jj,jk) 237 237 END DO … … 248 248 DO jj = 2, jpjm1 249 249 DO ji = fs_2, fs_jpim1 250 ztw(ji,jj,jk) = pw n(ji,jj,jk) * ztw(ji,jj,jk) * wmask(ji,jj,jk)251 END DO 252 END DO 253 END DO 254 IF( ln_linssh ) ztw(:,:, 1 ) = pw n(:,:,1) * pt_lev2(:,:,1,jn) !!gm ISF & 4th COMPACT doesn't work250 ztw(ji,jj,jk) = pw(ji,jj,jk) * ztw(ji,jj,jk) * wmask(ji,jj,jk) 251 END DO 252 END DO 253 END DO 254 IF( ln_linssh ) ztw(:,:, 1 ) = pw(:,:,1) * pt_lev2(:,:,1,jn) !!gm ISF & 4th COMPACT doesn't work 255 255 ! 256 256 END SELECT … … 269 269 DO ji = fs_2, fs_jpim1 ! vector opt. 270 270 zltv(ji,jj,jk) = pt_rhs(ji,jj,jk,jn) - zltv(ji,jj,jk) & 271 & + pt_lev2(ji,jj,jk,jn) * ( pw n(ji,jj,jk) - pwn(ji,jj,jk+1) ) &271 & + pt_lev2(ji,jj,jk,jn) * ( pw(ji,jj,jk) - pw(ji,jj,jk+1) ) & 272 272 & * r1_e1e2t(ji,jj) / e3t(ji,jj,jk,ktlev) 273 273 END DO
Note: See TracChangeset
for help on using the changeset viewer.