Changeset 9256
- Timestamp:
- 2018-01-17T16:17:04+01:00 (6 years ago)
- Location:
- branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC
- Files:
-
- 1 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trddyn.F90
r9119 r9256 18 18 USE sbc_oce ! surface boundary condition: ocean 19 19 USE zdf_oce ! ocean vertical physics: variables 20 USE zdfdrg ! ocean vertical physics: bottom friction20 !!gm USE zdfdrg ! ocean vertical physics: bottom friction 21 21 USE trd_oce ! trends: ocean variables 22 22 USE trdken ! trends: Kinetic ENergy … … 147 147 CALL iom_put( "vtrd_tau", z2dy ) 148 148 DEALLOCATE( z2dx , z2dy ) 149 ! ! bottom stress tends (implicit case) 150 IF( ln_drgimp ) THEN 151 ALLOCATE( z3dx(jpi,jpj,jpk) , z3dy(jpi,jpj,jpk) ) 152 z3dx(:,:,:) = 0._wp ; z3dy(:,:,:) = 0._wp ! after velocity known (now filed at this stage) 153 DO jk = 1, jpkm1 154 DO jj = 2, jpjm1 155 DO ji = 2, jpim1 156 ikbu = mbku(ji,jj) ! deepest ocean u- & v-levels 157 ikbv = mbkv(ji,jj) 158 z3dx(ji,jj,jk) = 0.5 * ( rCdU_bot(ji+1,jj) + rCdU_bot(ji,jj) ) & 159 & * un(ji,jj,ikbu) / e3u_n(ji,jj,ikbu) 160 z3dy(ji,jj,jk) = 0.5 * ( rCdU_bot(ji,jj+1) + rCdU_bot(ji,jj) ) & 161 & * vn(ji,jj,ikbv) / e3v_n(ji,jj,ikbv) 162 END DO 163 END DO 164 END DO 165 CALL lbc_lnk_multi( z3dx, 'U', -1., z3dy, 'V', -1. ) 166 CALL iom_put( "utrd_bfr", z3dx ) 167 CALL iom_put( "vtrd_bfr", z3dy ) 168 DEALLOCATE( z3dx , z3dy ) 169 ENDIF 149 !!gm to be changed : computation should be done in dynzdf.F90 150 !!gm + missing the top friction 151 ! ! ! bottom stress tends (implicit case) 152 ! IF( ln_drgimp ) THEN 153 ! ALLOCATE( z3dx(jpi,jpj,jpk) , z3dy(jpi,jpj,jpk) ) 154 ! z3dx(:,:,:) = 0._wp ; z3dy(:,:,:) = 0._wp ! after velocity known (now filed at this stage) 155 ! DO jk = 1, jpkm1 156 ! DO jj = 2, jpjm1 157 ! DO ji = 2, jpim1 158 ! ikbu = mbku(ji,jj) ! deepest ocean u- & v-levels 159 ! ikbv = mbkv(ji,jj) 160 ! z3dx(ji,jj,jk) = 0.5 * ( rCdU_bot(ji+1,jj) + rCdU_bot(ji,jj) ) & 161 ! & * un(ji,jj,ikbu) / e3u_n(ji,jj,ikbu) 162 ! z3dy(ji,jj,jk) = 0.5 * ( rCdU_bot(ji,jj+1) + rCdU_bot(ji,jj) ) & 163 ! & * vn(ji,jj,ikbv) / e3v_n(ji,jj,ikbv) 164 ! END DO 165 ! END DO 166 ! END DO 167 ! CALL lbc_lnk_multi( z3dx, 'U', -1., z3dy, 'V', -1. ) 168 ! CALL iom_put( "utrd_bfr", z3dx ) 169 ! CALL iom_put( "vtrd_bfr", z3dy ) 170 ! DEALLOCATE( z3dx , z3dy ) 171 ! ENDIF 172 !!gm end 170 173 CASE( jpdyn_bfr ) ! called if ln_drgimp=F 171 174 CALL iom_put( "utrd_bfr", putrd ) ! bottom friction (explicit case) -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trdglo.F90
r9019 r9256 22 22 USE ldfdyn ! ocean dynamics: lateral physics 23 23 USE zdf_oce ! ocean vertical physics 24 USE zdfdrg ! ocean vertical physics: bottom friction24 !!gm USE zdfdrg ! ocean vertical physics: bottom friction 25 25 USE zdfddm ! ocean vertical physics: double diffusion 26 26 USE eosbn2 ! equation of state … … 146 146 ENDIF 147 147 ! 148 IF( ktrd == jpdyn_atf ) THEN ! last trend (asselin time filter) 149 ! 150 IF( ln_drgimp ) THEN ! implicit drag case: compute separately the bottom friction 151 z1_2rau0 = 0.5_wp / rau0 152 DO jj = 1, jpjm1 153 DO ji = 1, jpim1 154 ikbu = mbku(ji,jj) ! deepest ocean u- & v-levels 155 ikbv = mbkv(ji,jj) 156 zvt = 0.5*( rCdU_bot(ji+1,jj)+rCdU_bot(ji,jj) ) * un(ji,jj,ikbu) * e1e2u(ji,jj) 157 zvs = 0.5*( rCdU_bot(ji,jj+1)+rCdU_bot(ji,jj) ) * vn(ji,jj,ikbv) * e1e2v(ji,jj) 158 umo(jpdyn_bfri) = umo(jpdyn_bfri) + zvt 159 vmo(jpdyn_bfri) = vmo(jpdyn_bfri) + zvs 160 hke(jpdyn_bfri) = hke(jpdyn_bfri) + un(ji,jj,ikbu) * zvt + vn(ji,jj,ikbv) * zvs 161 END DO 162 END DO 163 ENDIF 148 !!gm miss placed calculation ===>>>> to be done in dynzdf.F90 149 ! IF( ktrd == jpdyn_atf ) THEN ! last trend (asselin time filter) 150 ! ! 151 ! IF( ln_drgimp ) THEN ! implicit drag case: compute separately the bottom friction 152 ! z1_2rau0 = 0.5_wp / rau0 153 ! DO jj = 1, jpjm1 154 ! DO ji = 1, jpim1 155 ! ikbu = mbku(ji,jj) ! deepest ocean u- & v-levels 156 ! ikbv = mbkv(ji,jj) 157 ! zvt = 0.5*( rCdU_bot(ji+1,jj)+rCdU_bot(ji,jj) ) * un(ji,jj,ikbu) * e1e2u(ji,jj) 158 ! zvs = 0.5*( rCdU_bot(ji,jj+1)+rCdU_bot(ji,jj) ) * vn(ji,jj,ikbv) * e1e2v(ji,jj) 159 ! umo(jpdyn_bfri) = umo(jpdyn_bfri) + zvt 160 ! vmo(jpdyn_bfri) = vmo(jpdyn_bfri) + zvs 161 ! hke(jpdyn_bfri) = hke(jpdyn_bfri) + un(ji,jj,ikbu) * zvt + vn(ji,jj,ikbv) * zvs 162 ! END DO 163 ! END DO 164 ! ENDIF 165 ! 164 166 !!gm top drag case is missing 165 ! 166 CALL glo_dyn_wri( kt ) ! print the results in ocean.output 167 ! 168 umo(:) = 0._wp ! reset for the next time step 169 vmo(:) = 0._wp 170 hke(:) = 0._wp 171 ! 172 ENDIF 167 ! 168 ! ! 169 ! CALL glo_dyn_wri( kt ) ! print the results in ocean.output 170 ! ! 171 ! umo(:) = 0._wp ! reset for the next time step 172 ! vmo(:) = 0._wp 173 ! hke(:) = 0._wp 174 ! ! 175 ! ENDIF 176 !!gm end 173 177 ! 174 178 END SELECT … … 277 281 & + vmo(jpdyn_bfr) + vmo(jpdyn_atf) ) / tvolv 278 282 WRITE (numout,9513) umo(jpdyn_tau) / tvolu, vmo(jpdyn_tau) / tvolv 279 IF( ln_drgimp ) WRITE (numout,9514) umo(jpdyn_bfri) / tvolu, vmo(jpdyn_bfri) / tvolv283 !!gm IF( ln_drgimp ) WRITE (numout,9514) umo(jpdyn_bfri) / tvolu, vmo(jpdyn_bfri) / tvolv 280 284 ENDIF 281 285 … … 316 320 & + hke(jpdyn_bfr) + hke(jpdyn_atf) ) / tvolt 317 321 WRITE (numout,9533) hke(jpdyn_tau) / tvolt 318 IF( ln_drgimp ) WRITE (numout,9534) hke(jpdyn_bfri) / tvolt322 !!gm IF( ln_drgimp ) WRITE (numout,9534) hke(jpdyn_bfri) / tvolt 319 323 ENDIF 320 324 -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trdken.F90
r9097 r9256 16 16 USE sbc_oce ! surface boundary condition: ocean 17 17 USE zdf_oce ! ocean vertical physics variables 18 USE zdfdrg ! ocean vertical physics: bottom friction18 !!gm USE zdfdrg ! ocean vertical physics: bottom friction 19 19 USE ldftra ! ocean active tracers lateral physics 20 20 USE trd_oce ! trends: ocean variables -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trdmxl.F90
r9168 r9256 773 773 WRITE(numout,*) ' N.B. the nitend parameter is also constrained to be a ' 774 774 WRITE(numout,*) ' multiple of the nn_fsbc parameter ' 775 nstop = nstop + 1775 CALL ctl_stop( 'trd_mxl_init: see comment just above' ) 776 776 END IF 777 777 -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfdrg.F90
r9250 r9256 54 54 REAL(wp) :: rn_ke0 !: background kinetic energy (non-linear case) [m2/s2] 55 55 LOGICAL :: ln_boost !: =T regional boost of Cd0 ; =F Cd0 horizontally uniform 56 REAL(wp) :: rn_boost !: local boost factor[ - ]56 REAL(wp) :: rn_boost !: local boost factor [ - ] 57 57 58 58 REAL(wp), PUBLIC :: r_Cdmin_top, r_Cdmax_top, r_z0_top, r_ke0_top ! set from namdrg_top namelist values
Note: See TracChangeset
for help on using the changeset viewer.