Skip to content

Commit e8d233f

Browse files
committed
added a few unit tests for frequency range parameter to nyquist and bode
1 parent eaf5b16 commit e8d233f

1 file changed

Lines changed: 19 additions & 0 deletions

File tree

control/tests/freqresp_test.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
from control.statesp import StateSpace
1717
from control.xferfcn import TransferFunction
1818
from control.matlab import ss, tf, bode, rss
19+
from control.freqplot import bode_plot, nyquist_plot
1920
from control.tests.conftest import slycotonly
2021

2122
pytestmark = pytest.mark.usefixtures("mplcleanup")
@@ -61,6 +62,24 @@ def test_bode_basic(ss_siso):
6162
tf_siso = tf(ss_siso)
6263
bode(ss_siso)
6364
bode(tf_siso)
65+
assert len(bode_plot(tf_siso, plot=False, omega_num=20)[0] == 20)
66+
omega = bode_plot(tf_siso, plot=False, omega_limits=(1, 100))[2]
67+
assert_allclose(omega[0], 1)
68+
assert_allclose(omega[-1], 100)
69+
assert len(bode_plot(tf_siso, plot=False, omega=np.logspace(-1,1,10))[0])\
70+
== 10
71+
72+
def test_nyquist_basic(ss_siso):
73+
"""Test nyquist plot call (Very basic)"""
74+
# TODO: proper test
75+
tf_siso = tf(ss_siso)
76+
nyquist_plot(ss_siso)
77+
nyquist_plot(tf_siso)
78+
assert len(nyquist_plot(tf_siso, plot=False, omega_num=20)[0] == 20)
79+
omega = nyquist_plot(tf_siso, plot=False, omega_limits=(1, 100))[2]
80+
assert_allclose(omega[0], 1)
81+
assert_allclose(omega[-1], 100)
82+
assert len(nyquist_plot(tf_siso, plot=False, omega=np.logspace(-1, 1, 10))[0])==10
6483

6584

6685
@pytest.mark.filterwarnings("ignore:.*non-positive left xlim:UserWarning")

0 commit comments

Comments
 (0)