Skip to content

Commit 8965557

Browse files
authored
Merge pull request #126 from florisvb/notebooks-update-for-optimizer
removed a couple unnecessary imports, reran basic_tutorial notebook (…
2 parents 209731d + 685e5e0 commit 8965557

4 files changed

Lines changed: 38 additions & 48 deletions

File tree

examples/1_basic_tutorial.ipynb

Lines changed: 29 additions & 39 deletions
Large diffs are not rendered by default.

pynumdiff/tests/test_diff_methods.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import numpy as np
2-
from matplotlib import pyplot
32
from pytest import mark
43
from warnings import warn
54

pynumdiff/tests/test_optimize.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import numpy as np
2-
from pytest import mark, skip
2+
from pytest import skip
33

44
from ..finite_difference import first_order as iterated_finite_difference # actually second order
55
from ..smooth_finite_difference import mediandiff, meandiff, gaussiandiff, friedrichsdiff, butterdiff, splinediff

pynumdiff/utils/evaluate.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,10 @@ def metrics(x, dt, x_hat, dxdt_hat, x_truth=None, dxdt_truth=None, padding=0):
8181
"""
8282
if np.isnan(x_hat).any():
8383
return np.nan, np.nan, np.nan
84-
if padding is None or padding == 'auto':
84+
if padding == 'auto':
8585
padding = int(0.025*len(x))
8686
padding = max(padding, 1)
87-
s = slice(padding,len(x)-padding) # slice out where the data is
87+
s = slice(padding, len(x)-padding) # slice out data we want to measure
8888

8989
# RMS of dxdt and x_hat
9090
root = np.sqrt(s.stop - s.start)
@@ -111,12 +111,12 @@ def error_correlation(dxdt_hat, dxdt_truth, padding=0):
111111
112112
:return: (float) -- r-squared correlation coefficient
113113
"""
114-
if padding is None or padding == 'auto':
114+
if padding == 'auto':
115115
padding = int(0.025*len(dxdt_hat))
116116
padding = max(padding, 1)
117-
errors = (dxdt_hat[padding:-padding] - dxdt_truth[padding:-padding])
118-
r = stats.linregress(dxdt_truth[padding:-padding] -
119-
np.mean(dxdt_truth[padding:-padding]), errors)
117+
s = slice(padding, len(dxdt_hat)-padding) # slice out data we want to measure
118+
errors = (dxdt_hat[s] - dxdt_truth[s])
119+
r = stats.linregress(dxdt_truth[s] - np.mean(dxdt_truth[s]), errors)
120120
return r.rvalue**2
121121

122122

@@ -129,8 +129,9 @@ def total_variation(x, padding=0):
129129
"""
130130
if np.isnan(x).any():
131131
return np.nan
132-
if padding is None or padding == 'auto':
132+
if padding == 'auto':
133133
padding = int(0.025*len(x))
134134
padding = max(padding, 1)
135+
x = x[padding: len(x)-padding]
135136

136137
return np.sum(np.abs(x[1:]-x[:-1]))/(len(x)-1) # mostly equivalent to cvxpy.tv(x2-x1).value

0 commit comments

Comments
 (0)