Changeset 7421 for branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC/LDF
- Timestamp:
- 2016-12-01T18:10:41+01:00 (8 years ago)
- Location:
- branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC/LDF
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC/LDF/ldfc1d_c2d.F90
r6140 r7421 59 59 REAL(wp) :: zw , zdep2 ! - - 60 60 !!---------------------------------------------------------------------- 61 62 IF(lwp) THEN 63 WRITE(numout,*) 64 WRITE(numout,*) ' ldf_c1d : set a given profile to eddy diffusivity/viscosity coefficients' 65 WRITE(numout,*) ' ~~~~~~~' 66 ENDIF 61 67 62 68 ! initialization of the profile … … 130 136 ! 131 137 IF(lwp) THEN 132 WRITE(numout,*) 'ldf_c2d : aht = rn_aht0 * max(e1,e2)/e_equator ( laplacian) ' 133 WRITE(numout,*) '~~~~~~~ or = rn_bht0 * [max(e1,e2)/e_equator]**3 (bilaplacian)' 138 WRITE(numout,*) 139 WRITE(numout,*) ' ldf_c2d : aht = rn_aht0 * max(e1,e2)/e_equator ( laplacian) ' 140 WRITE(numout,*) ' ~~~~~~~ or = rn_bht0 * [max(e1,e2)/e_equator]**3 (bilaplacian)' 134 141 WRITE(numout,*) 135 142 ENDIF -
branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra.F90
r7403 r7421 298 298 ! 299 299 INTEGER :: ji, jj, jk ! dummy loop indices 300 REAL(wp) :: zaht, zah t_min, z1_f20 ! local scalar301 !!---------------------------------------------------------------------- 302 ! 303 IF( nn_aei_ijk_t == 21 ) THEN ! eddy induced velocity coefficients300 REAL(wp) :: zaht, zahf, zaht_min, z1_f20 ! local scalar 301 !!---------------------------------------------------------------------- 302 ! 303 IF( ln_ldfeiv .AND. nn_aei_ijk_t == 21 ) THEN ! eddy induced velocity coefficients 304 304 ! ! =F(growth rate of baroclinic instability) 305 305 ! ! max value rn_aeiv_0 ; decreased to 0 within 20N-20S 306 306 CALL ldf_eiv( kt, rn_aeiv_0, aeiu, aeiv ) 307 IF(lwp .AND. kt<=nit000+20 ) WRITE(numout,*) ' kt , ldf_eiv appel', kt308 307 ENDIF 309 308 ! … … 314 313 ! ! max value rn_aht_0 (rn_aeiv_0 if nn_aei_ijk_t=21) 315 314 ! ! increase to rn_aht_0 within 20N-20S 316 IF( nn_aei_ijk_t /= 21 ) THEN 317 CALL ldf_eiv( kt, rn_aht_0, ahtu, ahtv ) 318 IF(lwp .AND. kt<=nit000+20 ) WRITE(numout,*) ' kt , ldf_eiv appel 2', kt 319 ELSE 315 IF( ln_ldfeiv .AND. nn_aei_ijk_t == 21 ) THEN ! use the already computed aei. 320 316 ahtu(:,:,1) = aeiu(:,:,1) 321 317 ahtv(:,:,1) = aeiv(:,:,1) 322 IF(lwp .AND. kt<=nit000+20 ) WRITE(numout,*) ' kt , ahtu=aeiu', kt 318 ELSE ! compute aht. 319 CALL ldf_eiv( kt, rn_aht_0, ahtu, ahtv ) 323 320 ENDIF 324 321 ! … … 327 324 DO jj = 1, jpj 328 325 DO ji = 1, jpi 329 zaht = ( 1._wp - MIN( 1._wp , ABS( ff(ji,jj) * z1_f20 ) ) ) * ( rn_aht_0 - zaht_min ) 326 !!gm CAUTION : here we assume lat/lon grid in 20deg N/S band (like all ORCA cfg) 327 !! ==>>> The Coriolis value is identical for t- & u_points, and for v- and f-points 328 zaht = ( 1._wp - MIN( 1._wp , ABS( ff_t(ji,jj) * z1_f20 ) ) ) * ( rn_aht_0 - zaht_min ) 329 zahf = ( 1._wp - MIN( 1._wp , ABS( ff_f(ji,jj) * z1_f20 ) ) ) * ( rn_aht_0 - zaht_min ) 330 330 ahtu(ji,jj,1) = ( MAX( zaht_min, ahtu(ji,jj,1) ) + zaht ) * umask(ji,jj,1) ! min value zaht_min 331 ahtv(ji,jj,1) = ( MAX( zaht_min, ahtv(ji,jj,1) ) + zah t) * vmask(ji,jj,1) ! increase within 20S-20N331 ahtv(ji,jj,1) = ( MAX( zaht_min, ahtv(ji,jj,1) ) + zahf ) * vmask(ji,jj,1) ! increase within 20S-20N 332 332 END DO 333 333 END DO … … 555 555 END DO 556 556 557 !!gm IF( cp_cfg == "orca" .AND. jp_cfg == 2 ) THEN ! ORCA R2558 !!gm DO jj = 2, jpjm1559 !!gm DO ji = fs_2, fs_jpim1 ! vector opt.560 !!gm ! Take the minimum between aeiw and 1000 m2/s over shelves (depth shallower than 650 m)561 !!gm IF( mbkt(ji,jj) <= 20 ) zaeiw(ji,jj) = MIN( zaeiw(ji,jj), 1000. )562 !!gm END DO563 !!gm END DO564 !!gm ENDIF565 566 557 ! !== Bound on eiv coeff. ==! 567 558 z1_f20 = 1._wp / ( 2._wp * omega * sin( rad * 20._wp ) ) 568 559 DO jj = 2, jpjm1 569 560 DO ji = fs_2, fs_jpim1 ! vector opt. 570 zzaei = MIN( 1._wp, ABS( ff (ji,jj) * z1_f20 ) ) * zaeiw(ji,jj) ! tropical decrease561 zzaei = MIN( 1._wp, ABS( ff_t(ji,jj) * z1_f20 ) ) * zaeiw(ji,jj) ! tropical decrease 571 562 zaeiw(ji,jj) = MIN( zzaei , paei0 ) ! Max value = paei0 572 563 END DO
Note: See TracChangeset
for help on using the changeset viewer.