cupyx.scipy.signal.dlti#

class cupyx.scipy.signal.dlti(*system, **kwargs)[source]#

Discrete-time linear time invariant system base class.

Parameters:
  • *system (arguments) –

    The dlti class can be instantiated with either 2, 3 or 4 arguments. The following gives the number of arguments and the corresponding discrete-time subclass that is created:

    • 2: TransferFunction: (numerator, denominator)

    • 3: ZerosPolesGain: (zeros, poles, gain)

    • 4: StateSpace: (A, B, C, D)

    Each argument can be an array or a sequence.

  • dt (float, optional) – Sampling time [s] of the discrete-time systems. Defaults to True (unspecified sampling time). Must be specified as a keyword argument, for example, dt=0.1.

Notes

dlti instances do not exist directly. Instead, dlti creates an instance of one of its subclasses: StateSpace, TransferFunction or ZerosPolesGain.

Changing the value of properties that are not directly part of the current system representation (such as the zeros of a StateSpace system) is very inefficient and may lead to numerical inaccuracies. It is better to convert to the specific system representation first. For example, call sys = sys.to_zpk() before accessing/changing the zeros, poles or gain.

If (numerator, denominator) is passed in for *system, coefficients for both the numerator and denominator should be specified in descending exponent order (e.g., z^2 + 3z + 5 would be represented as [1, 3, 5]).

Methods

bode(w=None, n=100)[source]#

Calculate Bode magnitude and phase data of a discrete-time system.

Returns a 3-tuple containing arrays of frequencies [rad/s], magnitude [dB] and phase [deg]. See dbode for details.

freqresp(w=None, n=10000, whole=False)[source]#

Calculate the frequency response of a discrete-time system.

Returns a 2-tuple containing arrays of frequencies [rad/s] and complex magnitude. See dfreqresp for details.

impulse(x0=None, t=None, n=None)[source]#

Return the impulse response of the discrete-time dlti system. See dimpulse for details.

output(u, t, x0=None)[source]#

Return the response of the discrete-time system to input u. See dlsim for details.

step(x0=None, t=None, n=None)[source]#

Return the step response of the discrete-time dlti system. See dstep for details.

__eq__(value, /)#

Return self==value.

__ne__(value, /)#

Return self!=value.

__lt__(value, /)#

Return self<value.

__le__(value, /)#

Return self<=value.

__gt__(value, /)#

Return self>value.

__ge__(value, /)#

Return self>=value.

Attributes

dt#

Return the sampling time of the system.

poles#

Poles of the system.

zeros#

Zeros of the system.