Changeset 12656
- Timestamp:
- 2020-04-03T11:51:59+02:00 (3 years ago)
- Location:
- NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/ASM/asminc.F90
r12624 r12656 760 760 ! 761 761 ssh(:,:,Kbb) = ssh(:,:,Kmm) ! Update before fields 762 #if ! defined key_ QCO762 #if ! defined key_qco 763 763 e3t(:,:,:,Kbb) = e3t(:,:,:,Kmm) 764 764 #endif -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/DOM/domzgr_substitute.h90
r12624 r12656 11 11 !! Software governed by the CeCILL license (see ./LICENSE) 12 12 !!---------------------------------------------------------------------- 13 #if defined key_ QCO13 #if defined key_qco 14 14 # define e3t(i,j,k,t) (e3t_0(i,j,k)*(1.+r3t(i,j,t)*tmask(i,j,k))) 15 15 # define e3u(i,j,k,t) (e3u_0(i,j,k)*(1.+r3u(i,j,t)*umask(i,j,k))) -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/DYN/dynatfQCO.F90
r12624 r12656 69 69 CONTAINS 70 70 71 SUBROUTINE dyn_atf_qco ( kt, Kbb, Kmm, Kaa, puu, pvv , pe3t, pe3u, pe3v)71 SUBROUTINE dyn_atf_qco ( kt, Kbb, Kmm, Kaa, puu, pvv ) 72 72 !!---------------------------------------------------------------------- 73 73 !! *** ROUTINE dyn_atf_qco *** … … 98 98 INTEGER , INTENT(in ) :: Kbb, Kmm, Kaa ! before and after time level indices 99 99 REAL(wp), DIMENSION(jpi,jpj,jpk,jpt), INTENT(inout) :: puu, pvv ! velocities to be time filtered 100 REAL(wp), DIMENSION(jpi,jpj,jpk,jpt), INTENT(inout) :: pe3t, pe3u, pe3v ! scale factors to be time filtered101 100 ! 102 101 INTEGER :: ji, jj, jk ! dummy loop indices -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/ISF/isfcpl.F90
r12624 r12656 15 15 USE isfutils, ONLY : debug 16 16 USE lib_mpp , ONLY: mpp_sum, mpp_max ! mpp routine 17 #if ! defined key_ QCO17 #if ! defined key_qco 18 18 USE domvvl , ONLY: dom_vvl_zgr ! vertical scale factor interpolation 19 19 #else … … 117 117 vv (:,:,:,Kbb) = vv (:,:,:,Kmm) 118 118 ssh (:,:,Kbb) = ssh (:,:,Kmm) 119 #if ! defined key_ QCO119 #if ! defined key_qco 120 120 e3t(:,:,:,Kbb) = e3t(:,:,:,Kmm) 121 121 #endif … … 224 224 IF(lwp) write(numout,*) 'isfcpl_ssh : recompute scale factor from ssh (new wet cell,Kmm)' 225 225 IF(lwp) write(numout,*) '~~~~~~~~~~~' 226 #if ! defined key_ QCO226 #if ! defined key_qco 227 227 DO jk = 1, jpk 228 228 e3t(:,:,jk,Kmm) = e3t_0(:,:,jk) * ( ht_0(:,:) + ssh(:,:,Kmm) ) & -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/SBC/sbcice_cice.F90
r12624 r12656 233 233 !!gm This should be put elsewhere.... (same remark for limsbc) 234 234 !!gm especially here it is assumed zstar coordinate, but it can be ztilde.... 235 #if defined key_ QCO235 #if defined key_qco 236 236 IF( .NOT.ln_linssh ) CALL dom_qe_zgr( Kbb, Kmm, Kaa ) ! interpolation scale factor, depth and water column 237 237 #else -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/TRA/traatf.F90
r12581 r12656 58 58 !! * Substitutions 59 59 # include "do_loop_substitute.h90" 60 # include "domzgr_substitute.h90" 60 61 !!---------------------------------------------------------------------- 61 62 !! NEMO/OCE 4.0 , NEMO Consortium (2018) … … 131 132 ! G Nurser 23 Mar 2017. Recalculate trend as Delta(e3t*T)/e3tn; e3tn cancel from pts(Kmm) terms 132 133 DO jk = 1, jpkm1 133 ztrdt(:,:,jk) = ( pts(:,:,jk,jp_tem,Kaa)*e3t(:,:,jk,Kaa) / e3t(:,:,jk,Kmm) - pts(:,:,jk,jp_tem,Kmm)) * zfact 134 ztrds(:,:,jk) = ( pts(:,:,jk,jp_sal,Kaa)*e3t(:,:,jk,Kaa) / e3t(:,:,jk,Kmm) - pts(:,:,jk,jp_sal,Kmm)) * zfact 134 ztrdt(:,:,jk) = ( pts(:,:,jk,jp_tem,Kaa)*e3t(:,:,jk,Kaa) & 135 & / e3t(:,:,jk,Kmm) & 136 & - pts(:,:,jk,jp_tem,Kmm)) * zfact 137 ztrds(:,:,jk) = ( pts(:,:,jk,jp_sal,Kaa)*e3t(:,:,jk,Kaa) & 138 & / e3t(:,:,jk,Kmm) & 139 & - pts(:,:,jk,jp_sal,Kmm)) * zfact 135 140 END DO 136 141 CALL trd_tra( kt, Kmm, Kaa, 'TRA', jp_tem, jptra_tot, ztrdt ) … … 234 239 !! 235 240 !! ** Method : - Apply a thickness weighted Asselin time filter on now fields. 236 !! pt(Kmm) = ( e3t (Kmm)*pt(Kmm) + atfp*[ e3t(Kbb)*pt(Kbb) - 2 e3t(Kmm)*pt(Kmm) + e3t_a*pt(Kaa) ] )237 !! /( e3t (Kmm) + atfp*[ e3t(Kbb) - 2 e3t(Kmm) + e3t(Kaa)] )241 !! pt(Kmm) = ( e3t_Kmm*pt(Kmm) + atfp*[ e3t_Kbb*pt(Kbb) - 2 e3t_Kmm*pt(Kmm) + e3t_Kaa*pt(Kaa) ] ) 242 !! /( e3t_Kmm + atfp*[ e3t_Kbb - 2 e3t_Kmm + e3t_Kaa ] ) 238 243 !! 239 244 !! ** Action : - pt(Kmm) ready for the next time step … … 331 336 IF ( jk == misfkb_cav(ji,jj) ) THEN 332 337 ztc_f = ztc_f - zfact1 * ( risf_cav_tsc(ji,jj,jn) - risf_cav_tsc_b(ji,jj,jn) ) & 333 & * e3t(ji,jj,jk,Kmm) / rhisf_tbl_cav(ji,jj) * rfrac_tbl_cav(ji,jj) 338 & * e3t(ji,jj,jk,Kmm) / rhisf_tbl_cav(ji,jj) & 339 & * rfrac_tbl_cav(ji,jj) 334 340 END IF 335 341 END IF … … 345 351 IF ( jk == misfkb_par(ji,jj) ) THEN 346 352 ztc_f = ztc_f - zfact1 * ( risf_par_tsc(ji,jj,jn) - risf_par_tsc_b(ji,jj,jn) ) & 347 & * e3t(ji,jj,jk,Kmm) / rhisf_tbl_par(ji,jj) * rfrac_tbl_par(ji,jj) 353 & * e3t(ji,jj,jk,Kmm) / rhisf_tbl_par(ji,jj) & 354 & * rfrac_tbl_par(ji,jj) 348 355 END IF 349 356 END IF -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OCE/stepLF.F90
r12644 r12656 56 56 INTEGER, PUBLIC :: Nbb, Nnn, Naa, Nrhs !! used by nemo_init 57 57 # include "domzgr_substitute.h90" 58 # include "domzgr_substitute.h90" 58 59 !!---------------------------------------------------------------------- 59 60 !! NEMO/OCE 4.0 , NEMO Consortium (2018) … … 299 300 CALL dom_qe_r3c ( ssh(:,:,Nnn), r3t_f, r3u_f, r3v_f ) ! "now" ssh/h_0 ratio from filtrered ssh 300 301 CALL tra_atf_qco ( kstp, Nbb, Nnn, Naa, ts ) ! time filtering of "now" tracer arrays 301 CALL dyn_atf_qco ( kstp, Nbb, Nnn, Naa, uu, vv , e3t, e3u, e3v) ! time filtering of "now" velocities and scale factors302 CALL dyn_atf_qco ( kstp, Nbb, Nnn, Naa, uu, vv ) ! time filtering of "now" velocities and scale factors 302 303 r3t(:,:,Nnn) = r3t_f(:,:) 303 304 r3u(:,:,Nnn) = r3u_f(:,:)
Note: See TracChangeset
for help on using the changeset viewer.