Skip to content

Commit 0a4ed70

Browse files
committed
bug correction toward direction AntSimi#252
1 parent 99a848f commit 0a4ed70

File tree

3 files changed

+8
-9
lines changed

3 files changed

+8
-9
lines changed

src/py_eddy_tracker/appli/network.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ def previous_obs(d, i_seg):
283283
def display_compare(ref, others):
284284
def display(value, ref=None):
285285
if ref:
286-
outs = [f"{v/ref[k] * 100:.1f}% ({v})" for k, v in value.items()]
286+
outs = [f"{v / ref[k] * 100:.1f}% ({v})" for k, v in value.items()]
287287
else:
288288
outs = value
289289
return "".join([f"{v:^18}" for v in outs])

src/py_eddy_tracker/dataset/grid.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from matplotlib.path import Path as BasePath
1010
from netCDF4 import Dataset
1111
from numba import njit, prange, types as numba_types
12+
import numpy as np
1213
from numpy import (
1314
arange,
1415
array,
@@ -35,7 +36,6 @@
3536
percentile,
3637
pi,
3738
radians,
38-
round_,
3939
sin,
4040
sinc,
4141
sqrt,
@@ -2251,12 +2251,11 @@ def compute_pixel_path(x0, y0, x1, y1, x_ori, y_ori, x_step, y_step, nb_x):
22512251
i_x1 = empty(nx, dtype=numba_types.int_)
22522252
i_y0 = empty(nx, dtype=numba_types.int_)
22532253
i_y1 = empty(nx, dtype=numba_types.int_)
2254-
# Because round_ is not accepted with array in numba
22552254
for i in range(nx):
2256-
i_x0[i] = round_(((x0[i] - x_ori) % 360) / x_step)
2257-
i_x1[i] = round_(((x1[i] - x_ori) % 360) / x_step)
2258-
i_y0[i] = round_((y0[i] - y_ori) / y_step)
2259-
i_y1[i] = round_((y1[i] - y_ori) / y_step)
2255+
i_x0[i] = np.round(((x0[i] - x_ori) % 360) / x_step)
2256+
i_x1[i] = np.round(((x1[i] - x_ori) % 360) / x_step)
2257+
i_y0[i] = np.round((y0[i] - y_ori) / y_step)
2258+
i_y1[i] = np.round((y1[i] - y_ori) / y_step)
22602259
# Delta index of x
22612260
d_x = i_x1 - i_x0
22622261
d_x = (d_x + nb_x // 2) % nb_x - (nb_x // 2)
@@ -2941,7 +2940,7 @@ def compute_stencil(x, y, h, m, earth_radius, vertical=False, stencil_halfwidth=
29412940
h_3, h_2, h_1, h0 = h[-4, j], h[-3, j], h[-2, j], h[-1, j]
29422941
m_3, m_2, m_1, m0 = m[-4, j], m[-3, j], m[-2, j], m[-1, j]
29432942
else:
2944-
m_3, m_2, m_1, m0 = False, False, False, False
2943+
m_3, m_2, m_1, m0 = True, True, True, True
29452944
h1, h2, h3, h4 = h[0, j], h[1, j], h[2, j], h[3, j]
29462945
m1, m2, m3, m4 = m[0, j], m[1, j], m[2, j], m[3, j]
29472946
for i in range(nb_x):

src/py_eddy_tracker/observations/tracking.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,7 @@ def extract_toward_direction(self, west=True, delta_lon=None):
380380
d_lon = lon[i1] - lon[i0]
381381
m = d_lon < 0 if west else d_lon > 0
382382
if delta_lon is not None:
383-
m *= delta_lon < d_lon
383+
m *= delta_lon < abs(d_lon)
384384
m = m.repeat(nb)
385385
return self.extract_with_mask(m)
386386

0 commit comments

Comments
 (0)