#### Previous topic

scipy.signal.freqresp

#### Next topic

scipy.signal.lti.A

# scipy.signal.lti

class `scipy.signal.``lti`(*system)

  Linear Time Invariant system base class.

  Parameters:

  *system : arguments

  > The `lti` class can be instantiated with either 2, 3 or 4 arguments. The following gives the number of arguments and the corresponding 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.

  Notes

  `lti` instances do not exist directly. Instead, `lti` 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.

  Attributes

  `A` | State matrix of the `StateSpace` system.
  `B` | Input matrix of the `StateSpace` system.
  `C` | Output matrix of the `StateSpace` system.
  `D` | Feedthrough matrix of the `StateSpace` system.
  `den` | Denominator of the `TransferFunction` system.
  `gain` | Gain of the `ZerosPolesGain` system.
  `num` | Numerator of the `TransferFunction` system.
  `poles` | Poles of the `ZerosPolesGain` system.
  `zeros` | Zeros of the `ZerosPolesGain` system.

  Methods

  `bode`([w, n]) | Calculate Bode magnitude and phase data of a continuous-time system.
  `freqresp`([w, n]) | Calculate the frequency response of a continuous-time system.
  `impulse`([X0, T, N]) | Return the impulse response of a continuous-time system.
  `output`(U, T[, X0]) | Return the response of a continuous-time system to input U.
  `step`([X0, T, N]) | Return the step response of a continuous-time system.