Changeset 5989 for branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OPA_SRC/DYN/dynzad.F90
- Timestamp:
- 2015-12-03T09:10:32+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OPA_SRC/DYN/dynzad.F90
r5260 r5989 49 49 !! 50 50 !! ** Method : The now vertical advection of momentum is given by: 51 !! w dz(u) = ua + 1/(e1 u*e2u*e3u) mk+1[ mi(e1t*e2t*wn) dk(un) ]52 !! w dz(v) = va + 1/(e1 v*e2v*e3v) mk+1[ mj(e1t*e2t*wn) dk(vn) ]51 !! w dz(u) = ua + 1/(e1e2u*e3u) mk+1[ mi(e1e2t*wn) dk(un) ] 52 !! w dz(v) = va + 1/(e1e2v*e3v) mk+1[ mj(e1e2t*wn) dk(vn) ] 53 53 !! Add this trend to the general trend (ua,va): 54 54 !! (ua,va) = (ua,va) + w dz(u,v) … … 85 85 DO jj = 2, jpj ! vertical fluxes 86 86 DO ji = fs_2, jpi ! vector opt. 87 zww(ji,jj) = 0.25_wp * e1 t(ji,jj) *e2t(ji,jj) * wn(ji,jj,jk)87 zww(ji,jj) = 0.25_wp * e1e2t(ji,jj) * wn(ji,jj,jk) 88 88 END DO 89 89 END DO … … 121 121 DO ji = fs_2, fs_jpim1 ! vector opt. 122 122 ! ! vertical momentum advective trends 123 zua = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / ( e1 u(ji,jj) *e2u(ji,jj) * fse3u(ji,jj,jk) )124 zva = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / ( e1 v(ji,jj) *e2v(ji,jj) * fse3v(ji,jj,jk) )123 zua = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / ( e1e2u(ji,jj) * fse3u(ji,jj,jk) ) 124 zva = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / ( e1e2v(ji,jj) * fse3v(ji,jj,jk) ) 125 125 ! ! add the trends to the general momentum trends 126 126 ua(ji,jj,jk) = ua(ji,jj,jk) + zua … … 146 146 ! 147 147 END SUBROUTINE dyn_zad 148 148 149 149 150 SUBROUTINE dyn_zad_zts ( kt ) … … 182 183 IF( nn_timing == 1 ) CALL timing_start('dyn_zad_zts') 183 184 ! 184 CALL wrk_alloc( jpi,jpj,jpk, zwuw, zwvw, zww )185 CALL wrk_alloc( jpi,jpj,jpk,3, zus, zvs )185 CALL wrk_alloc( jpi,jpj,jpk, zwuw, zwvw, zww ) 186 CALL wrk_alloc( jpi,jpj,jpk,3, zus , zvs ) 186 187 ! 187 188 IF( kt == nit000 ) THEN … … 205 206 DO jj = 2, jpj 206 207 DO ji = fs_2, jpi ! vector opt. 207 zww(ji,jj,jk) = 0.25_wp * e1 t(ji,jj) *e2t(ji,jj) * wn(ji,jj,jk)208 zww(ji,jj,jk) = 0.25_wp * e1e2t(ji,jj) * wn(ji,jj,jk) 208 209 END DO 209 210 END DO 210 211 END DO 211 ! 212 ! Surface and bottom advective fluxes set to zero 213 DO jj = 2, jpjm1 212 213 DO jj = 2, jpjm1 ! Surface and bottom advective fluxes set to zero 214 214 DO ji = fs_2, fs_jpim1 ! vector opt. 215 !!gm missing ISF boundary condition 215 216 zwuw(ji,jj, 1 ) = 0._wp 216 217 zwvw(ji,jj, 1 ) = 0._wp … … 251 252 DO ji = fs_2, fs_jpim1 ! vector opt. 252 253 ! ! vertical momentum advective trends 253 zua = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / ( e1 u(ji,jj) *e2u(ji,jj) * fse3u(ji,jj,jk) )254 zva = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / ( e1 v(ji,jj) *e2v(ji,jj) * fse3v(ji,jj,jk) )254 zua = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / ( e1e2u(ji,jj) * fse3u(ji,jj,jk) ) 255 zva = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / ( e1e2v(ji,jj) * fse3v(ji,jj,jk) ) 255 256 zus(ji,jj,jk,jta) = zus(ji,jj,jk,jtb) + zua * zts 256 257 zvs(ji,jj,jk,jta) = zvs(ji,jj,jk,jtb) + zva * zts … … 283 284 & tab3d_2=va, clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 284 285 ! 285 CALL wrk_dealloc( jpi,jpj,jpk, zwuw, zwvw, zww )286 CALL wrk_dealloc( jpi,jpj,jpk,3, zus, zvs )286 CALL wrk_dealloc( jpi,jpj,jpk, zwuw, zwvw, zww ) 287 CALL wrk_dealloc( jpi,jpj,jpk,3, zus , zvs ) 287 288 ! 288 289 IF( nn_timing == 1 ) CALL timing_stop('dyn_zad_zts')
Note: See TracChangeset
for help on using the changeset viewer.