summaryrefslogtreecommitdiff
path: root/numpy/lib/function_base.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/lib/function_base.py')
-rw-r--r--numpy/lib/function_base.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
index 910c2bc43..3115f7a80 100644
--- a/numpy/lib/function_base.py
+++ b/numpy/lib/function_base.py
@@ -1482,7 +1482,7 @@ def angle(z, deg=False):
return a
-def _unwrap_dispatcher(p, discont=None, axis=None, *, interval_size=2*pi):
+def _unwrap_dispatcher(p, discont=None, axis=None, *, interval_size=None):
return (p,)
@@ -1551,11 +1551,13 @@ def unwrap(p, discont=None, axis=-1, *, interval_size=2*pi):
slice1[axis] = slice(1, None)
slice1 = tuple(slice1)
ddmod = mod(dd + interval_size/2, interval_size) - interval_size/2
+ # the above line made `ddmod[abs(dd) == interval_size/2] == -interval_size/2`.
+ # correct these such that `ddmod[abs(dd) == interval_size/2] == sign(dd)*interval_size/2`.
_nx.copyto(ddmod, interval_size/2, where=(ddmod == -interval_size/2) & (dd > 0))
ph_correct = ddmod - dd
_nx.copyto(ph_correct, 0, where=abs(dd) < discont)
up = array(p, copy=True, dtype='d')
- up[slice1] = p[slice1] + ph_correct.cumsum(axis)
+ up[slice1] = p[slice1] + ph_correct.cumsum(axis)
return up