#### Previous topic

scipy.signal.lti.step

#### Next topic

scipy.signal.StateSpace.A

# scipy.signal.StateSpace

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

  Linear Time Invariant system class in state-space form.

  Represents the system as the first order differential equation \(\dot{x} = A x + B u\).

  Parameters:

  *system : arguments

  > The `StateSpace` class can be instantiated with 1 or 4 arguments. The following gives the number of input arguments and their interpretation:

  > > - 1: `lti` system: (`StateSpace`, `TransferFunction` or `ZerosPolesGain`)
  > > - 4: array_like: (A, B, C, D)

  See also

  `TransferFunction`, `ZerosPolesGain`, `lti`, `ss2zpk`, `ss2tf`, `zpk2sos`

  Notes

  Changing the value of properties that are not part of the `StateSpace` system representation (such as `zeros` or `poles`) 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.
  `to_ss`() | Return a copy of the current `StateSpace` system.
  `to_tf`(**kwargs) | Convert system representation to `TransferFunction`.
  `to_zpk`(**kwargs) | Convert system representation to `ZerosPolesGain`.