control.matlab.lsim(sys, U=0.0, T=None, X0=0.0)

Simulate the output of a linear system.

As a convenience for parameters U, X0: Numbers (scalars) are converted to constant arrays with the correct shape. The correct shape is inferred from arguments sys and T.

  • sys (LTI (StateSpace, or TransferFunction)) – LTI system to simulate
  • U (array-like or number, optional) –

    Input array giving input at each time T (default = 0).

    If U is None or 0, a special algorithm is used. This special algorithm is faster than the general algorithm, which is used otherwise.

  • T (array-like, optional for discrete LTI sys) – Time steps at which the input is defined; values must be evenly spaced.
  • X0 (array-like or number, optional) – Initial condition (default = 0).

  • yout (array) – Response of the system.
  • T (array) – Time values of the output.
  • xout (array) – Time evolution of the state vector.


>>> yout, T, xout = lsim(sys, U, T, X0)