Skip to content

Commit 06f3d24

Browse files
committed
fixed imports and arguments reorder
1 parent e0fb4c4 commit 06f3d24

3 files changed

Lines changed: 17 additions & 20 deletions

File tree

pynumdiff/optimize/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
"""
33
try:
44
import cvxpy
5-
from .optimize import total_variation_regularization
5+
from . import total_variation_regularization
66
except ImportError:
77
from warnings import warn
88
warn("Limited support for total variation regularization and linear model detected! " +
99
"Some functions in the `total_variation_regularization` and `linear_model` modules require " +
1010
"CVXPY to be installed. You can still pynumdiff.optimize for other functions.")
1111

12-
from .optimize import finite_difference, smooth_finite_difference, linear_model, kalman_smooth
12+
from . import finite_difference, smooth_finite_difference, linear_model, kalman_smooth
1313

1414
__all__ = ['finite_difference', 'smooth_finite_difference', 'linear_model', 'kalman_smooth', 'total_variation_regularization'] # So these get treated as direct members of the module by sphinx

pynumdiff/tests/test_optimize.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,15 @@
1212
from pynumdiff.optimize.linear_model import *
1313
from pynumdiff.optimize.kalman_smooth import constant_velocity, constant_acceleration, \
1414
constant_jerk
15-
from pynumdiff.utils import simulate
15+
from pynumdiff.utils.simulate import pi_control
1616

1717

1818
# simulation
1919
noise_type = 'normal'
2020
noise_parameters = [0, 0.01]
2121
dt = 0.01
22-
timeseries_length = 2
23-
problem = 'pi_control'
24-
x, x_truth, dxdt_truth, extras = simulate.__dict__[problem](timeseries_length,
25-
noise_parameters=noise_parameters,
26-
dt=dt)
22+
duration = 2
23+
x, x_truth, dxdt_truth, extras = pi_control(duration, noise_parameters=noise_parameters, dt=dt)
2724
cutoff_frequency = 0.1
2825
log_gamma = -1.6 * np.log(cutoff_frequency) - 0.71 * np.log(dt) - 5.1
2926
tvgamma = np.exp(log_gamma)

pynumdiff/utils/simulate.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212

1313
# pylint: disable-msg=too-many-locals, too-many-arguments, no-member
14-
def _add_noise(x, random_seed, noise_type, *noise_parameters):
14+
def _add_noise(x, random_seed, noise_type, noise_parameters):
1515
"""Add synthetic noise to data
1616
1717
:param np.array[float] x: data
@@ -57,7 +57,7 @@ def sine(duration=4, noise_type='normal', noise_parameters=(0, 0.5), random_seed
5757
x += magnitude/len(frequencies)*np.sin(t*2*np.pi*f)
5858
dxdt += magnitude/len(frequencies)*np.cos(t*2*np.pi*f)*2*np.pi*f
5959
actual_vals = np.array(np.vstack((x, dxdt)))
60-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
60+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
6161
#
6262
noisy_measurements = np.array(noisy_x)
6363
#
@@ -115,7 +115,7 @@ def triangle(duration=4, noise_type='normal', noise_parameters=(0, 0.5), random_
115115
x = np.interp(t, reversal_ts, reversal_vals)
116116
_, dxdt = _finite_difference(x, dt=simdt)
117117

118-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
118+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
119119

120120
actual_vals = np.array(np.vstack((x, dxdt)))
121121
noisy_measurements = np.array(noisy_x)
@@ -161,7 +161,7 @@ def pop_dyn(duration=4, noise_type='normal', noise_parameters=(0, 0.5), random_s
161161
x = np.array(x)
162162
dxdt = np.array(dxdt)
163163

164-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
164+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
165165

166166
actual_vals = np.array(np.vstack((x, dxdt)))
167167
noisy_measurements = np.array(noisy_x)
@@ -206,7 +206,7 @@ def linear_autonomous(duration=4, noise_type='normal', noise_parameters=(0, 0.5)
206206
x *= 2
207207

208208
smooth_x, dxdt = _finite_difference( np.ravel(x), simdt)
209-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
209+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
210210

211211
idx = np.arange(0, len(t), int(dt/simdt))
212212
return np.ravel(noisy_x)[1:][idx], smooth_x[1:][idx], dxdt[1:][idx], None
@@ -239,7 +239,7 @@ def pi_control(duration=4, noise_type='normal', noise_parameters=(0, 0.5),
239239
x = np.ravel(actual_vals[0, :])
240240
dxdt = np.ravel(actual_vals[1, :])
241241

242-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
242+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
243243

244244
actual_vals = np.array(np.vstack((x, dxdt)))
245245
noisy_measurements = np.array(noisy_x)
@@ -343,9 +343,9 @@ def lorenz_xyz(duration=4, noise_type='normal', noise_parameters=(0, 0.5), rando
343343
z = xyz[2, 0:-1] / f
344344
dzdt = xyz_dot[2, :] / f
345345

346-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
347-
noisy_y = _add_noise(y, noise_type, noise_parameters, random_seed+1)
348-
noisy_z = _add_noise(z, noise_type, noise_parameters, random_seed+2)
346+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
347+
noisy_y = _add_noise(y, random_seed+1, noise_type, noise_parameters)
348+
noisy_z = _add_noise(z, random_seed+2, noise_type, noise_parameters)
349349

350350
actual_vals = np.array(np.vstack((x, y, z, dxdt, dydt, dzdt)))
351351
noisy_measurements = np.array(np.vstack((noisy_x, noisy_y, noisy_z)))
@@ -404,9 +404,9 @@ def dxyz_dt(xyz):
404404
y = vals[1, :]
405405
z = vals[2, :]
406406

407-
noisy_x = _add_noise(x, noise_type, noise_parameters, random_seed)
408-
noisy_y = _add_noise(y, noise_type, noise_parameters, random_seed+1)
409-
noisy_z = _add_noise(z, noise_type, noise_parameters, random_seed+2)
407+
noisy_x = _add_noise(x, random_seed, noise_type, noise_parameters)
408+
noisy_y = _add_noise(y, random_seed+1, noise_type, noise_parameters)
409+
noisy_z = _add_noise(z, random_seed+2, noise_type, noise_parameters)
410410

411411
_, dxdt = _finite_difference(x, dt)
412412
_, dydt = _finite_difference(y, dt)

0 commit comments

Comments
 (0)