Skip to content

Commit 6365426

Browse files
authored
Merge pull request #701 from FESOM/cavity_bugfix
Cavity bugfix: from linfs to rigid lid
2 parents 6bd38de + 7312db4 commit 6365426

2 files changed

Lines changed: 9 additions & 8 deletions

File tree

setups/test_pi_cavity/setup.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,12 @@ namelist.io:
6060
prec: 8
6161

6262
fcheck:
63-
a_ice: 0.17871151405988808
64-
salt: 22.37927476279744
65-
sst: 12.544066495030401
66-
temp: 1.8319437672008856
67-
u: -0.0017562313316165064
68-
v: -0.00017630627103706065
63+
a_ice: 0.17871151410285582
64+
salt: 22.37927480878272
65+
sst: 12.544074978023154
66+
temp: 1.8319439470825187
67+
u: -0.001756233171353315
68+
v: -0.00017630433400062892
6969

7070

7171

src/oce_ale.F90

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1928,7 +1928,6 @@ subroutine compute_ssh_rhs_ale(dynamics, partit, mesh)
19281928
else
19291929
!$OMP DO
19301930
do n=1,myDim_nod2D
1931-
if (ulevels_nod2D(n)>1) cycle ! --> in case of cavity
19321931
ssh_rhs(n)=ssh_rhs(n)+(1.0_WP-alpha)*ssh_rhs_old(n)
19331932
end do
19341933
!$OMP END DO
@@ -2054,6 +2053,7 @@ subroutine compute_hbar_ale(dynamics, partit, mesh)
20542053
if (.not. trim(which_ALE)=='linfs') then
20552054
!$OMP PARALLEL DO
20562055
do n=1,myDim_nod2D
2056+
if (ulevels_nod2D(n)>1) cycle
20572057
ssh_rhs_old(n)=ssh_rhs_old(n)-water_flux(n)*areasvol(ulevels_nod2D(n),n)
20582058
end do
20592059
!$OMP END PARALLEL DO
@@ -2070,6 +2070,7 @@ subroutine compute_hbar_ale(dynamics, partit, mesh)
20702070

20712071
!$OMP PARALLEL DO
20722072
do n=1,myDim_nod2D
2073+
if (ulevels_nod2D(n) > 1) cycle ! --> if cavity node hbar == hbar_old
20732074
hbar(n)=hbar_old(n)+ssh_rhs_old(n)*dt/areasvol(ulevels_nod2D(n),n)
20742075
end do
20752076
!$OMP END PARALLEL DO
@@ -3656,7 +3657,7 @@ subroutine oce_timestep_ale(n, ice, dynamics, tracers, partit, mesh)
36563657
! rigid lid.
36573658
!$OMP PARALLEL DO
36583659
do node=1, myDim_nod2D+eDim_nod2D
3659-
eta_n(node)=alpha*hbar(node)+(1.0_WP-alpha)*hbar_old(node)
3660+
if (ulevels_nod2D(node)==1) eta_n(node)=alpha*hbar(node)+(1.0_WP-alpha)*hbar_old(node)
36603661
end do
36613662
!$OMP END PARALLEL DO
36623663
! --> eta_(n)

0 commit comments

Comments
 (0)