Changeset 13899 for NEMO/branches/2020/tickets_icb_1900/src/SWE/ldfdyn.F90
- Timestamp:
- 2020-11-27T17:26:33+01:00 (4 years ago)
- Location:
- NEMO/branches/2020/tickets_icb_1900
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/tickets_icb_1900
- Property svn:externals
-
NEMO/branches/2020/tickets_icb_1900/src/SWE/ldfdyn.F90
r12983 r13899 312 312 IF( ierr /= 0 ) CALL ctl_stop( 'STOP', 'ldf_dyn_init: failed to allocate Smagorinsky arrays') 313 313 ! 314 DO_2D _11_11314 DO_2D( 1, 1, 1, 1 ) 315 315 esqt(ji,jj) = ( 2._wp * e1e2t(ji,jj) / ( e1t(ji,jj) + e2t(ji,jj) ) )**2 316 316 esqf(ji,jj) = ( 2._wp * e1e2f(ji,jj) / ( e1f(ji,jj) + e2f(ji,jj) ) )**2 … … 396 396 IF( ln_dynldf_lap ) THEN ! laplacian operator : |u| e /12 = |u/144| e 397 397 DO jk = 1, jpkm1 398 DO_2D _00_00398 DO_2D( 0, 0, 0, 0 ) 399 399 zu2pv2_ij = uu(ji ,jj ,jk,Kbb) * uu(ji ,jj ,jk,Kbb) + vv(ji ,jj ,jk,Kbb) * vv(ji ,jj ,jk,Kbb) 400 400 zu2pv2_ij_m1 = uu(ji-1,jj ,jk,Kbb) * uu(ji-1,jj ,jk,Kbb) + vv(ji ,jj-1,jk,Kbb) * vv(ji ,jj-1,jk,Kbb) … … 402 402 ahmt(ji,jj,jk) = SQRT( (zu2pv2_ij + zu2pv2_ij_m1) * r1_288 ) * zemax * tmask(ji,jj,jk) ! 288= 12*12 * 2 403 403 END_2D 404 DO_2D _10_10404 DO_2D( 1, 0, 1, 0 ) 405 405 zu2pv2_ij_p1 = uu(ji ,jj+1,jk, Kbb) * uu(ji ,jj+1,jk, Kbb) + vv(ji+1,jj ,jk, Kbb) * vv(ji+1,jj ,jk, Kbb) 406 406 zu2pv2_ij = uu(ji ,jj ,jk, Kbb) * uu(ji ,jj ,jk, Kbb) + vv(ji ,jj ,jk, Kbb) * vv(ji ,jj ,jk, Kbb) … … 411 411 ELSEIF( ln_dynldf_blp ) THEN ! bilaplacian operator : sqrt( |u| e^3 /12 ) = sqrt( |u/144| e ) * e 412 412 DO jk = 1, jpkm1 413 DO_2D _00_00413 DO_2D( 0, 0, 0, 0 ) 414 414 zu2pv2_ij = uu(ji ,jj ,jk,Kbb) * uu(ji ,jj ,jk,Kbb) + vv(ji ,jj ,jk,Kbb) * vv(ji ,jj ,jk,Kbb) 415 415 zu2pv2_ij_m1 = uu(ji-1,jj ,jk,Kbb) * uu(ji-1,jj ,jk,Kbb) + vv(ji ,jj-1,jk,Kbb) * vv(ji ,jj-1,jk,Kbb) … … 417 417 ahmt(ji,jj,jk) = SQRT( SQRT( (zu2pv2_ij + zu2pv2_ij_m1) * r1_288 ) * zemax ) * zemax * tmask(ji,jj,jk) 418 418 END_2D 419 DO_2D _10_10419 DO_2D( 1, 0, 1, 0 ) 420 420 zu2pv2_ij_p1 = uu(ji ,jj+1,jk, Kbb) * uu(ji ,jj+1,jk, Kbb) + vv(ji+1,jj ,jk, Kbb) * vv(ji+1,jj ,jk, Kbb) 421 421 zu2pv2_ij = uu(ji ,jj ,jk, Kbb) * uu(ji ,jj ,jk, Kbb) + vv(ji ,jj ,jk, Kbb) * vv(ji ,jj ,jk, Kbb) … … 440 440 DO jk = 1, jpkm1 441 441 ! 442 DO_2D _00_00442 DO_2D( 0, 0, 0, 0 ) 443 443 zdb = ( uu(ji,jj,jk,Kbb) * r1_e2u(ji,jj) - uu(ji-1,jj,jk,Kbb) * r1_e2u(ji-1,jj) ) & 444 444 & * r1_e1t(ji,jj) * e2t(ji,jj) & … … 448 448 END_2D 449 449 ! 450 DO_2D _10_10450 DO_2D( 1, 0, 1, 0 ) 451 451 zdb = ( uu(ji,jj+1,jk,Kbb) * r1_e1u(ji,jj+1) - uu(ji,jj,jk,Kbb) * r1_e1u(ji,jj) ) & 452 452 & * r1_e2f(ji,jj) * e1f(ji,jj) & … … 462 462 DO jk = 1, jpkm1 463 463 ! 464 DO_2D _00_00464 DO_2D( 0, 0, 0, 0 ) 465 465 ! 466 466 zu2pv2_ij = uu(ji ,jj ,jk,Kbb) * uu(ji ,jj ,jk,Kbb) + vv(ji ,jj ,jk,Kbb) * vv(ji ,jj ,jk,Kbb) … … 476 476 END_2D 477 477 ! 478 DO_2D _10_10478 DO_2D( 1, 0, 1, 0 ) 479 479 ! 480 480 zu2pv2_ij_p1 = uu(ji ,jj+1,jk, kbb) * uu(ji ,jj+1,jk, kbb) + vv(ji+1,jj ,jk, kbb) * vv(ji+1,jj ,jk, kbb) … … 499 499 ! ! effective default limits are 1/12 |U|L^3 < B_hm < 1//(32*2dt) L^4 500 500 DO jk = 1, jpkm1 501 DO_2D _00_00501 DO_2D( 0, 0, 0, 0 ) 502 502 ahmt(ji,jj,jk) = SQRT( r1_8 * esqt(ji,jj) * ahmt(ji,jj,jk) ) 503 503 END_2D 504 DO_2D _10_10504 DO_2D( 1, 0, 1, 0 ) 505 505 ahmf(ji,jj,jk) = SQRT( r1_8 * esqf(ji,jj) * ahmf(ji,jj,jk) ) 506 506 END_2D
Note: See TracChangeset
for help on using the changeset viewer.