Skip to content

Commit fb3d9a0

Browse files
committed
MAINT: the Hz parameter of bode_plot and singular_values_plot now only affects the plot (input/outputs are always in rad/sec)
1 parent 288a7ee commit fb3d9a0

2 files changed

Lines changed: 6 additions & 10 deletions

File tree

control/freqplot.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ def bode_plot(syslist, omega=None,
201201
syslist = (syslist,)
202202

203203
omega, omega_range_given = _determine_omega_vector(
204-
syslist, omega, omega_limits, omega_num, Hz)
204+
syslist, omega, omega_limits, omega_num)
205205

206206
if plot:
207207
# Set up the axes with labels so that multiple calls to
@@ -1103,7 +1103,7 @@ def singular_values_plot(syslist, omega=None,
11031103
syslist = (syslist,)
11041104

11051105
omega, omega_range_given = _determine_omega_vector(
1106-
syslist, omega, omega_limits, omega_num, Hz)
1106+
syslist, omega, omega_limits, omega_num)
11071107

11081108
omega = np.atleast_1d(omega)
11091109

@@ -1198,7 +1198,7 @@ def singular_values_plot(syslist, omega=None,
11981198

11991199

12001200
# Determine the frequency range to be used
1201-
def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num, Hz):
1201+
def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num):
12021202
"""Determine the frequency range for a frequency-domain plot
12031203
according to a standard logic.
12041204
@@ -1248,15 +1248,11 @@ def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num, Hz):
12481248
omega_limits = np.asarray(omega_limits)
12491249
if len(omega_limits) != 2:
12501250
raise ValueError("len(omega_limits) must be 2")
1251-
if Hz:
1252-
omega_limits *= 2. * math.pi
12531251
omega_out = np.logspace(np.log10(omega_limits[0]),
12541252
np.log10(omega_limits[1]),
12551253
num=omega_num, endpoint=True)
12561254
else:
12571255
omega_out = np.copy(omega_in)
1258-
if Hz:
1259-
omega_out *= 2. * math.pi
12601256
return omega_out, omega_range_given
12611257

12621258

control/tests/config_test.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ def test_fbs_bode(self):
8585
np.testing.assert_almost_equal(mag_y[0], 20*log10(10), decimal=3)
8686

8787
plt.figure()
88-
ct.bode_plot(self.sys, omega/2./pi, Hz=True)
88+
ct.bode_plot(self.sys, omega, Hz=True)
8989
mag_x, mag_y = (((plt.gcf().axes[0]).get_lines())[0]).get_data()
9090
np.testing.assert_almost_equal(mag_x[0], 0.001 / (2*pi), decimal=6)
9191

@@ -130,7 +130,7 @@ def test_matlab_bode(self):
130130
np.testing.assert_almost_equal(mag_y[0], 20*log10(10), decimal=3)
131131

132132
plt.figure()
133-
ct.bode_plot(self.sys, omega/2./pi, Hz=True)
133+
ct.bode_plot(self.sys, omega, Hz=True)
134134
mag_x, mag_y = (((plt.gcf().axes[0]).get_lines())[0]).get_data()
135135
np.testing.assert_almost_equal(mag_x[0], 0.001 / (2*pi), decimal=6)
136136

@@ -154,7 +154,7 @@ def test_custom_bode_default(self):
154154

155155
# Override defaults
156156
plt.figure()
157-
ct.bode_plot(self.sys, omega/2./pi, Hz=True, deg=False, dB=True)
157+
ct.bode_plot(self.sys, omega, Hz=True, deg=False, dB=True)
158158
mag_x, mag_y = (((plt.gcf().axes[0]).get_lines())[0]).get_data()
159159
phase_x, phase_y = (((plt.gcf().axes[1]).get_lines())[0]).get_data()
160160
np.testing.assert_almost_equal(mag_x[0], 0.001 / (2*pi), decimal=6)

0 commit comments

Comments
 (0)