control.gangof4_response

control.gangof4_response(P, C, omega=None, omega_limits=None, omega_num=None, Hz=False)[source]

Compute response of “Gang of 4” transfer functions.

Generates a 2x2 frequency response for the “Gang of 4” sensitivity functions [T, PS; CS, S].

Parameters
P, CLTI

Linear input/output systems (process and control).

omegaarray

Range of frequencies (list or bounds) in rad/sec.

omega_limitsarray_like of two values

Set limits for plotted frequency range. If Hz=True the limits are in Hz otherwise in rad/s. Specifying omega as a list of two elements is equivalent to providing omega_limits. Ignored if data is not a list of systems.

omega_numint

Number of samples to use for the frequency range. Defaults to config.defaults['freqplot.number_of_samples']. Ignored if data is not a list of systems.

Hzbool, optional

If True, when computing frequency limits automatically set limits to full decades in Hz instead of rad/s.

Returns
responseFrequencyResponseData

Frequency response with inputs ‘r’ and ‘d’ and outputs ‘y’, and ‘u’ representing the 2x2 matrix of transfer functions in the Gang of 4.

Examples

>>> P = ct.tf([1], [1, 1])
>>> C = ct.tf([2], [1])
>>> response = ct.gangof4_response(P, C)
>>> cplt = response.plot()