scipy.signal.

dlsim#

scipy.signal.dlsim(system, u, t=None, x0=None)[源代码][源代码]#

模拟离散时间线性系统的输出。

参数:
系统 : array_like 的元组或 dlti 的实例array_like 的元组或实例

描述系统的元组。以下给出了元组中元素的数量及其解释:

  • 1: (dlti 的实例)

  • 3: (分子, 分母, 时间步长)

  • 4: (零点, 极点, 增益, 采样时间)

  • 5: (A, B, C, D, dt)

uarray_like

一个描述每个时间 t 输入的输入数组(假设在给定时间之间进行插值)。如果有多个输入,那么秩为2的数组的每一列代表一个输入。

t类似数组, 可选

定义输入的时间步长。如果给出了 t,它必须与 u 的长度相同,并且 t 中的最终值决定了输出中返回的步数。

x0类似数组, 可选

状态向量的初始条件(默认为零)。

返回:
toutndarray

输出时间值,作为一维数组。

ndarray

系统响应,作为一个一维数组。

xoutndarray,可选

状态向量的时间演化。仅在输入为 StateSpace 系统时生成。

示例

一个简单的积分器传递函数,具有1.0的离散时间步长,可以实现为:

>>> import numpy as np
>>> 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.T
array([[ 0.,  0.,  0.,  1.]])