Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
add new file for apidoc, change spliting_event, adding comment
change spliting_event to reflext what merging_event do
  • Loading branch information
ludwigVonKoopa committed Mar 11, 2021
commit 685651bd7729e828254b6a736974befc7dbfbefb
1 change: 1 addition & 0 deletions doc/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ API reference
py_eddy_tracker.observations.network
py_eddy_tracker.observations.observation
py_eddy_tracker.observations.tracking
py_eddy_tracker.observations.groups
py_eddy_tracker.eddy_feature
py_eddy_tracker.generic
py_eddy_tracker.gui
Expand Down
8 changes: 2 additions & 6 deletions src/py_eddy_tracker/observations/groups.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ def filled_by_interpolation(self, mask):
)

def insert_virtual(self):
"""insert virtual observation on segments where observations were not found"""

dt_theorical = median(self.time[1:] - self.time[:-1])
indices = self.get_missing_indices(dt_theorical)
Expand All @@ -118,14 +119,9 @@ def insert_virtual(self):
mask = zeros(size_obs_corrected, dtype=bool)
mask[indices_corrected] = 1

# time2 = np.empty(n.time.size+indices.size, dtype=n.time.dtype)
# time2[mask] = -1
# time2[~mask] = n.time

# new_TEO = TrackEddiesObservations.new_like(n, size_obs_corrected)
new_TEO = self.new_like(self, size_obs_corrected)
new_TEO.obs[~mask] = self.obs
new_TEO.filled_by_interpolation(mask)
new_TEO.virtual[:] = mask
new_TEO.fix_next_previous_obs()
return new_TEO
return new_TEO
23 changes: 16 additions & 7 deletions src/py_eddy_tracker/observations/network.py
Original file line number Diff line number Diff line change
Expand Up @@ -838,7 +838,7 @@ def merging_event(self, triplet=False, only_index=False):
else:
return self.extract_event(idx_m1)

def spliting_event(self, triplet=False):
def spliting_event(self, triplet=False, only_index=False):
"""Return observation before a splitting event.

If `triplet=True` return the eddy before a splitting event, the eddy after the splitting event,
Expand All @@ -859,14 +859,23 @@ def spliting_event(self, triplet=False):
idx_s1_start.append(i.start)
idx_s1.append(next_obs[i_p])
idx_s0.append(i_p)

if triplet:
return (
self.extract_event(list(idx_s0)),
self.extract_event(list(idx_s1)),
self.extract_event(list(idx_s1_start)),
)
if only_index:
return (idx_s0, idx_s1, idx_s1_start)
else:
return (
self.extract_event(list(idx_s0)),
self.extract_event(list(idx_s1)),
self.extract_event(list(idx_s1_start)),
)

else:
return self.extract_event(list(set(idx_s0)))
idx_s0 = list(set(idx_s0))
if only_index:
return idx_s0
else:
return self.extract_event(idx_s0)

def dissociate_network(self):
"""
Expand Down