Skip to content

Commit fc5d926

Browse files
cleanup test and fix dig-sim
1 parent 5d964a0 commit fc5d926

2 files changed

Lines changed: 15 additions & 9 deletions

File tree

electricpy/sim.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@ def digifiltersim(fin, filter, freqs, NN=1000, dt=0.01, title="",
7979
figsize: tuple, optional
8080
The figure dimensions for each subplot, default=None
8181
"""
82-
if (figsize != None): _plt.figure(figsize=figsize)
82+
if figsize is not None:
83+
_plt.figure(figsize=figsize)
8384
flen = len(freqs)
8485
for i in range(flen):
8586
# Gather frequency
@@ -94,7 +95,7 @@ def digifiltersim(fin, filter, freqs, NN=1000, dt=0.01, title="",
9495
x[k] = fin(k * dt, freq)
9596

9697
# Identify how many rows were provided
97-
sz = filter.size
98+
sz = len(filter) if isinstance(filter, (tuple, list)) else filter.size
9899
if (sz < 5):
99100
raise ValueError("ERROR: Too few filter arguments provided. " +
100101
"Refer to documentation for proper format.")
@@ -131,10 +132,11 @@ def digifiltersim(fin, filter, freqs, NN=1000, dt=0.01, title="",
131132
_plt.plot(ytime, 'k', label="Output")
132133
_plt.title(title)
133134
_plt.grid(which='both')
134-
if legend: _plt.legend(title="Frequency = " + str(freq) + "Hz")
135-
if xlim != False:
135+
if legend:
136+
_plt.legend(title="Frequency = " + str(freq) + "Hz")
137+
if not xlim:
136138
_plt.xlim(xlim)
137-
elif xmxscale != None:
139+
elif xmxscale is not None:
138140
_plt.xlim((0, xmxscale / (freq * dt)))
139141

140142
_plt.tight_layout()

test/test_sim.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,14 @@
77

88

99
def test_digifiltersim_basic():
10-
fin = lambda t, f: np.sin(2 * np.pi * f * t)
11-
filter_row = [0.0, 0.0, 1.0, 0.0, 0.0]
12-
13-
plot_module = sim.digifiltersim(fin, filter_row, freqs=[1], NN=10, dt=0.1, legend=False)
10+
plot_module = sim.digifiltersim(
11+
lambda t, f: np.sin(2 * np.pi * f * t),
12+
[0.0, 0.0, 1.0, 0.0, 0.0],
13+
freqs=[1],
14+
NN=10,
15+
dt=0.1,
16+
legend=False
17+
)
1418

1519
assert plot_module is not None
1620

0 commit comments

Comments
 (0)