Skip to content
Snippets Groups Projects
Commit 5b4321cc authored by Piotr Maślanka's avatar Piotr Maślanka
Browse files

refactor thanks to CodeClimate

parent ddc72f46
No related branches found
Tags v2.14.22
No related merge requests found
......@@ -24,22 +24,23 @@ def linear_interpolate(series: tp.Sequence[tp.Tuple[K, U]], t: K,
return series[0][1]
else:
raise ValueError('t smaller than t_min')
if t > series[-1][0]:
elif t > series[-1][0]:
if clip:
return series[-1][1]
else:
raise ValueError('t greater than t_max')
if t == series[0][0]:
return series[0][1]
v = series[0][1]
else:
i = bisect.bisect_left([y[0] for y in series], t) - 1
i = bisect.bisect_left([y[0] for y in series], t) - 1
if i == len(series) - 1:
return series[-1][1]
t1, v1 = series[i]
t2, v2 = series[i + 1]
if i == len(series) - 1:
v = series[-1][1]
else:
t1, v1 = series[i]
t2, v2 = series[i + 1]
assert t1 <= t <= t2, 'Series not sorted!'
return (v2 - v1) / (t2 - t1) * (t - t1) + v1
assert t1 <= t <= t2, 'Series not sorted!'
v = (v2 - v1) / (t2 - t1) * (t - t1) + v1
return v
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment