Skip to content

Commit c44b901

Browse files
committed
passthrough Hz parameter for omega vector
1 parent 19801e6 commit c44b901

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

control/freqplot.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ def bode_plot(syslist, omega=None,
209209
syslist = (syslist,)
210210

211211
omega, omega_range_given = _determine_omega_vector(
212-
syslist, omega, omega_limits, omega_num)
212+
syslist, omega, omega_limits, omega_num, Hz=Hz)
213213

214214
if plot:
215215
# Set up the axes with labels so that multiple calls to
@@ -965,7 +965,7 @@ def gangof4_plot(P, C, omega=None, **kwargs):
965965
# Select a default range if none is provided
966966
# TODO: This needs to be made more intelligent
967967
if omega is None:
968-
omega = _default_frequency_range((P, C, S))
968+
omega = _default_frequency_range((P, C, S), Hz=Hz)
969969

970970
# Set up the axes with labels so that multiple calls to
971971
# gangof4_plot will superimpose the data. See details in bode_plot.
@@ -1115,7 +1115,7 @@ def singular_values_plot(syslist, omega=None,
11151115
syslist = (syslist,)
11161116

11171117
omega, omega_range_given = _determine_omega_vector(
1118-
syslist, omega, omega_limits, omega_num)
1118+
syslist, omega, omega_limits, omega_num, Hz=Hz)
11191119

11201120
omega = np.atleast_1d(omega)
11211121

@@ -1210,7 +1210,8 @@ def singular_values_plot(syslist, omega=None,
12101210

12111211

12121212
# Determine the frequency range to be used
1213-
def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num):
1213+
def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num,
1214+
Hz=None):
12141215
"""Determine the frequency range for a frequency-domain plot
12151216
according to a standard logic.
12161217
@@ -1236,6 +1237,10 @@ def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num):
12361237
omega_num : int
12371238
Number of points to be used for the frequency
12381239
range (if the frequency range is not user-specified)
1240+
Hz : bool. optional
1241+
If True, the limits (first and last value) of the frequencies
1242+
are set to full decades in Hz so it fits plotting with logarithmic
1243+
scale in Hz otherwise in rad/s. Omega is always returned in rad/sec.
12391244
12401245
Returns
12411246
-------
@@ -1253,7 +1258,8 @@ def _determine_omega_vector(syslist, omega_in, omega_limits, omega_num):
12531258
omega_range_given = False
12541259
# Select a default range if none is provided
12551260
omega_out = _default_frequency_range(syslist,
1256-
number_of_samples=omega_num)
1261+
number_of_samples=omega_num,
1262+
Hz=Hz)
12571263
else:
12581264
omega_limits = np.asarray(omega_limits)
12591265
if len(omega_limits) != 2:
@@ -1280,7 +1286,7 @@ def _default_frequency_range(syslist, Hz=None, number_of_samples=None,
12801286
----------
12811287
syslist : list of LTI
12821288
List of linear input/output systems (single system is OK)
1283-
Hz : bool
1289+
Hz : bool. optional
12841290
If True, the limits (first and last value) of the frequencies
12851291
are set to full decades in Hz so it fits plotting with logarithmic
12861292
scale in Hz otherwise in rad/s. Omega is always returned in rad/sec.

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy