control.matlab.impulse(sys, T=None, X0=0.0, input=0, output=None, return_x=False)[source]

Impulse response of a linear system

If the system has multiple inputs or outputs (MIMO), one input has to be selected for the simulation. Optionally, one output may be selected. If no selection is made for the output, all outputs are given. The parameters input and output do this. All other inputs are set to 0, all other outputs are ignored.

  • sys (StateSpace, TransferFunction) – LTI system to simulate

  • T (array-like or number, optional) – Time vector, or simulation time duration if a number (time vector is autocomputed if not given)

  • X0 (array-like or number, optional) –

    Initial condition (default = 0)

    Numbers are converted to constant arrays with the correct shape.

  • input (int) – Index of the input that will be used in this simulation.

  • output (int) – Index of the output that will be used in this simulation.


  • yout (array) – Response of the system

  • T (array) – Time values of the output

  • xout (array (if selected)) – Individual response of each x variable

See also

lsim, step, initial


>>> from control.matlab import rss, impulse
>>> G = rss()
>>> yout, T = impulse(G)