Skip to content

Commit 721a48b

Browse files
committed
Fix bug with neighbourhood calculation across periodic western boundary
1 parent 7a4d6df commit 721a48b

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

implicit_filter/_numpy_functions.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -154,12 +154,12 @@ def calculate_global_nemo_neighbourhood(e2d: int, nx: int, ny: int, north_adj: p
154154
xc = nx # Number of cells in x axis
155155

156156
# Fill ee_pos, arrangement is W;N;E;S
157-
ee_pos[:, 0] = np.array([xc * (yc - 1), 1, yc, 0]) # Corner
157+
ee_pos[:, 0] = np.array([yc * (xc - 1), 1, yc, 0]) # Corner
158158
# print(f"x: {0} y: {0} ni: {0}")
159159
# ids.add(0)
160160
nza += 3
161161
for m in range(1, yc - 1):
162-
ee_pos[:, m] = [xc * (yc - 1) + m, m + 1, m + yc, m - 1] # Left border
162+
ee_pos[:, m] = [yc * (xc - 1) + m, m + 1, m + yc, m - 1] # Left border
163163
# ids.add(m)
164164
# print(f"x: {0} y: {m} ni: {m}")
165165
nza += 4
@@ -257,12 +257,12 @@ def calculate_global_regular_neighbourhood(e2d: int, nx: int, ny: int) -> Tuple[
257257
xc = nx # Number of cells in x axis
258258

259259
# Fill ee_pos, arrangement is W;N;E;S
260-
ee_pos[:, 0] = np.array([xc * (yc - 1), 1, yc, 0]) # Corner
260+
ee_pos[:, 0] = np.array([yc * (xc - 1), 1, yc, 0]) # Corner
261261
# print(f"x: {0} y: {0} ni: {0}")
262262
# ids.add(0)
263263
nza += 3
264264
for m in range(1, yc - 1):
265-
ee_pos[:, m] = [xc * (yc - 1) + m, m + 1, m + yc, m - 1] # Left border
265+
ee_pos[:, m] = [yc * (xc - 1) + m, m + 1, m + yc, m - 1] # Left border
266266
# ids.add(m)
267267
# print(f"x: {0} y: {m} ni: {m}")
268268
nza += 4

0 commit comments

Comments
 (0)