Skip to content
Snippets Groups Projects
Commit 5c46c2bc authored by Sibylle TECHENE's avatar Sibylle TECHENE
Browse files

correct coriolis management to go from barocline mode to barotrope mode

parent d51fb55c
No related branches found
No related tags found
No related merge requests found
......@@ -247,10 +247,24 @@ CONTAINS
zCdU_v (:,:) = CdU_v (:,:)
!!gm ==>>> !!ts ISSUe her on en discute changer les cas ENS ENE et triad ?
!
! != remove 2D Coriolis trend =!
! ! -------------------------- !
!
IF( kt == nit000 .OR. .NOT. ln_linssh ) CALL dyn_cor_2D_init( Kmm ) ! Set zwz, the barotropic Coriolis force coefficient
! ! recompute zwz = f/depth at every time step for (.NOT.ln_linssh) as the water colomn height changes
!
zhU(:,:) = puu_b(:,:,Kmm) * hu(:,:,Kmm) * e2u(:,:) ! now fluxes
zhV(:,:) = pvv_b(:,:,Kmm) * hv(:,:,Kmm) * e1v(:,:) ! NB: FULL domain : put a value in last row and column
!
CALL dyn_cor_2D( ht(:,:), hu(:,:,Kmm), hv(:,:,Kmm), puu_b(:,:,Kmm), pvv_b(:,:,Kmm), zhU, zhV, & ! <<== in
& zu_trd, zv_trd ) ! ==>> out
!
DO_2D( 0, 0, 0, 0 ) ! Remove coriolis term (and possibly spg) from barotropic trend
zu_frc(ji,jj) = zu_frc(ji,jj) - zu_trd(ji,jj) * ssumask(ji,jj)
zv_frc(ji,jj) = zv_frc(ji,jj) - zv_trd(ji,jj) * ssvmask(ji,jj)
END_2D
#else
! !========================================!
! !== Phase 1 for MLF time integration ==!
......
......@@ -109,16 +109,12 @@ CONTAINS
uu(:,:,:,Krhs) = 0._wp ! set dynamics trends to zero
vv(:,:,:,Krhs) = 0._wp
!
! !* compute advection *!
! !* compute advection + coriolis *!
!
CALL dyn_adv( kstp, Kbb, Kbb , uu, vv, Krhs) !- vector form KEG+ZAD
CALL dyn_adv( kt, Kbb, Kbb , uu, vv, Krhs) !- vector form KEG+ZAD
! !- flux form ADV
SELECT CASE( n_dynadv )
CASE( np_VEC_c2 ) !- vector form (add relative vorticity term)
CALL dyn_vor( kt, Kbb, uu, vv, Krhs, np_RVO )
CASE( np_FLX_c2 , np_FLX_ubs ) !- flux form (add metric term)
CALL dyn_vor ( kt , Kbb, uu, vv, Krhs, np_MET )
END SELECT
CALL dyn_vor( kt, Kbb, uu, vv, Krhs ) !- vector form COR+RVO
! !- flux form COR+MET
!
! !* lateral viscosity *!
CALL dyn_ldf( kt, Kbb, Kbb, uu, vv, Krhs )
......@@ -145,7 +141,6 @@ CONTAINS
CALL dyn_drg_init( Kbb, Kbb, uu, vv, uu_b, vv_b, Ue_rhs, Ve_rhs, CdU_u, CdU_v )
!
! !* wind forcing *!
!!st ATTENTION stoke drift !!
IF( ln_bt_fw ) THEN
DO_2D( 0, 0, 0, 0 )
Ue_rhs(ji,jj) = Ue_rhs(ji,jj) + r1_rho0 * utau(ji,jj) * r1_hu(ji,jj,Kbb)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment