scipy.signal.dlsim¶
- scipy.signal.dlsim(system, u, t=None, x0=None)[source]¶
Simulate output of a discrete-time linear system.
Parameters : system : class instance or tuple
An instance of the LTI class, or a tuple describing the system. The following gives the number of elements in the tuple and the interpretation:
- 3: (num, den, dt)
- 4: (zeros, poles, gain, dt)
- 5: (A, B, C, D, dt)
u : array_like
An input array describing the input at each time t (interpolation is assumed between given times). If there are multiple inputs, then each column of the rank-2 array represents an input.
t : array_like, optional
The time steps at which the input is defined. If t is given, the final value in t determines the number of steps returned in the output.
x0 : arry_like, optional
The initial conditions on the state vector (zero by default).
Returns : tout : ndarray
Time values for the output, as a 1-D array.
yout : ndarray
System response, as a 1-D array.
xout : ndarray, optional
Time-evolution of the state-vector. Only generated if the input is a state-space systems.
See also
Examples
A simple integrator transfer function with a discrete time step of 1.0 could be implemented as:
>>> from scipy import signal >>> tf = ([1.0,], [1.0, -1.0], 1.0) >>> t_in = [0.0, 1.0, 2.0, 3.0] >>> u = np.asarray([0.0, 0.0, 1.0, 1.0]) >>> t_out, y = signal.dlsim(tf, u, t=t_in) >>> y array([ 0., 0., 0., 1.])