cupyx.scipy.signal.StateSpace#

class cupyx.scipy.signal.StateSpace(*system, **kwargs)[源代码][源代码]#

状态空间形式的线性时不变系统。

表示系统为连续时间的一阶微分方程 \(\dot{x} = A x + B u\) 或离散时间的差分方程 \(x[k+1] = A x[k] + B u[k]\)StateSpace 系统根据使用的系统表示,分别从 ltidlti 类继承额外的功能。

参数:
  • *system (arguments) –

    StateSpace 类可以用1个或4个参数实例化。以下给出了输入参数的数量及其解释:

    • 1: ltidlti 系统: (StateSpace, TransferFunctionZerosPolesGain)

    • 4: 类似数组: (A, B, C, D)

  • dt (float, optional) – 离散时间系统的采样时间 [s]。默认为 None`(连续时间)。必须指定为关键字参数,例如,``dt=0.1`

备注

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

方法

to_ss()[源代码][源代码]#

返回当前 StateSpace 系统的副本。

返回:

sys – 当前系统(副本)

返回类型:

StateSpace 的实例

to_tf(**kwargs)[源代码][源代码]#

将系统表示转换为 TransferFunction

参数:

kwargs (dict, optional) – 传递给 ss2zpk 的附加关键字

返回:

sys – 当前系统的传递函数

返回类型:

TransferFunction 的实例

to_zpk(**kwargs)[源代码][源代码]#

将系统表示转换为 ZerosPolesGain

参数:

kwargs (dict, optional) – 传递给 ss2zpk 的附加关键字

返回:

sys – 当前系统的零点、极点、增益表示

返回类型:

ZerosPolesGain 的实例

__eq__(value, /)#

返回 self==value。

__ne__(value, /)#

返回 self!=value。

__lt__(value, /)#

返回 self<value。

__le__(value, /)#

返回 self<=value。

__gt__(value, /)#

返回 self>value。

__ge__(value, /)#

返回 self>=value。

属性

A#

StateSpace 系统的 状态矩阵

B#

StateSpace 系统的输入矩阵。

C#

StateSpace 系统的输出矩阵。

D#

StateSpace 系统的 Feedthrough 矩阵。

dt#

返回系统的采样时间,lti 系统返回 None

poles#

系统的极点。

zeros#

系统的零点。