- Timestamp:
- 2020-05-25T12:04:00+02:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/MOI/NEMO_4.03_IODRAG/src/OCE/ZDF/zdftke.F90
r12703 r12966 195 195 REAL(wp) :: zrhoa = 1.22 ! Air density kg/m3 196 196 REAL(wp) :: zcdrag = 1.5e-3 ! drag coefficient 197 REAL(wp) :: zbbrau, z ri! local scalars197 REAL(wp) :: zbbrau, zbbrau0, zri ! local scalars 198 198 REAL(wp) :: zfact1, zfact2, zfact3 ! - - 199 199 REAL(wp) :: ztx2 , zty2 , zcof ! - - … … 202 202 REAL(wp) :: zzd_up, zzd_lw ! - - 203 203 INTEGER , DIMENSION(jpi,jpj) :: imlc 204 REAL(wp), DIMENSION(jpi,jpj) :: ziconc 204 205 REAL(wp), DIMENSION(jpi,jpj) :: zhlc, zfr_i 205 206 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zpelc, zdiag, zd_up, zd_lw … … 207 208 ! 208 209 zbbrau = rn_ebb / rau0 ! Local constant initialisation 210 zbbrau0 = 3.75_wp / rau0 209 211 zfact1 = -.5_wp * rdt 210 212 zfact2 = 1.5_wp * rdt * rn_ediss … … 214 216 ! ! Surface/top/bottom boundary condition on tke 215 217 ! !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 216 218 ziconc(:,:) = 1._wp - TANH(fr_i(:,:) * 10._wp) 219 ! 217 220 DO jj = 2, jpjm1 ! en(1) = rn_ebb taum / rau0 (min value rn_emin0) 218 221 DO ji = fs_2, fs_jpim1 ! vector opt. 219 en(ji,jj,1) = MAX( rn_emin0, zbbrau * taum(ji,jj) ) * tmask(ji,jj,1) 222 en(ji,jj,1) = MAX( rn_emin0, (ziconc(ji,jj)*zbbrau + (1._wp-ziconc(ji,jj))*zbbrau0) & 223 & * taum(ji,jj) ) * tmask(ji,jj,1) 220 224 END DO 221 225 END DO … … 249 253 zetop = - 0.001875_wp * rCdU_top(ji,jj) * SQRT( ( zmsku*( ub(ji,jj,mikt(ji,jj))+ub(ji-1,jj,mikt(ji,jj)) ) )**2 & 250 254 & + ( zmskv*( vb(ji,jj,mikt(ji,jj))+vb(ji,jj-1,mikt(ji,jj)) ) )**2 ) 251 en(ji,jj,mikt(ji,jj)) = en(ji,jj,1) * tmask(ji,jj,1) & 255 en(ji,jj,mikt(ji,jj)) = en(ji,jj,1) * tmask(ji,jj,1) & 252 256 & + MAX( zetop, rn_emin ) * (1._wp - tmask(ji,jj,1)) * ssmask(ji,jj) 253 257 END DO … … 479 483 REAL(wp) :: zdku, zdkv, zsqen ! - - 480 484 REAL(wp) :: zemxl, zemlm, zemlp ! - - 485 REAL(wp) :: rn_hsri 486 REAL(wp), DIMENSION(jpi,jpj) :: ziconc 481 487 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zmxlm, zmxld ! 3D workspace 482 488 !!-------------------------------------------------------------------- … … 502 508 zmxlm(:,:,1) = rn_mxl0 503 509 ENDIF 510 ziconc(:,:) = 1._wp - TANH(fr_i(:,:) * 10._wp) 511 rn_hsri = vkarmn * 0.03_wp ! Sea ice roughness 512 zmxlm(:,:,1) = (ziconc(:,:) * zmxlm(:,:,1) + (1._wp - ziconc(:,:)) * rn_hsri)*tmask(:,:,1) & 513 & + (1._wp - tmask(:,:,1)) * rn_mxl0 504 514 ! 505 515 DO jk = 2, jpkm1 ! interior value : l=sqrt(2*e/n^2)
Note: See TracChangeset
for help on using the changeset viewer.