当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy signal.dlti用法及代码示例


本文简要介绍 python 语言中 scipy.signal.dlti 的用法。

用法:

class  scipy.signal.dlti(*system, **kwargs)#

Discrete-time 线性时不变系统基类。

参数

*system: arguments

dlti 类可以使用 2、3 或 4 个参数进行实例化。下面给出了参数的数量以及创建的相应的 discrete-time 子类:

每个参数可以是数组或序列。

dt: float, optional

discrete-time 系统的采样时间 [s]。默认为True(未指定的采样时间)。必须指定为关键字参数,例如 dt=0.1

注意

dlti 实例并不直接存在。相反, dlti 创建其子类之一的实例: StateSpace TransferFunction ZerosPolesGain

更改不直接属于当前系统表示的属性的值(例如 StateSpace 系统的 zeros )效率非常低,并且可能导致数值不准确。最好先转换成具体的系统表示。例如,在访问/更改零点、极点或增益之前调用sys = sys.to_zpk()

如果 (numerator, denominator) 为 *system 传入,则分子和分母的系数应按 index 降序指定(例如,z^2 + 3z + 5 将表示为 [1, 3, 5] )。

例子

>>> from scipy import signal
>>> signal.dlti(1, 2, 3, 4)
StateSpaceDiscrete(
array([[1]]),
array([[2]]),
array([[3]]),
array([[4]]),
dt: True
)
>>> signal.dlti(1, 2, 3, 4, dt=0.1)
StateSpaceDiscrete(
array([[1]]),
array([[2]]),
array([[3]]),
array([[4]]),
dt: 0.1
)

构造采样时间为 0.1 秒的传递函数

>>> signal.dlti([1, 2], [3, 4], 5, dt=0.1)
ZerosPolesGainDiscrete(
array([1, 2]),
array([3, 4]),
5,
dt: 0.1
)

构造采样时间为 0.1 秒的传递函数

>>> signal.dlti([3, 4], [1, 2], dt=0.1)
TransferFunctionDiscrete(
array([3., 4.]),
array([1., 2.]),
dt: 0.1
)

属性

dt

返回系统的采样时间。

poles

系统的极点。

zeros

系统的零点。

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.signal.dlti。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。