cupyx.scipy.signal.StateSpace#
- class cupyx.scipy.signal.StateSpace(*system, **kwargs)[source]#
状态空间形式的线性时不变系统。
将系统表示为连续时间一阶微分方程 \(\dot{x} = A x + B u\) 或离散时间差分方程 \(x[k+1] = A x[k] + B u[k]\)。StateSpace 系统分别继承自 lti 或 dlti 类,具体取决于所使用的系统表示形式。
- 参数:
*system (参数) –
StateSpace 类可以使用 1 个或 4 个参数实例化。以下是输入参数的数量及其解释
1: lti 或 dlti 系统: (StateSpace, TransferFunction 或 ZerosPolesGain)
4: array_like: (A, B, C, D)
dt (float, 可选) – 离散时间系统的采样时间 [s]。默认为 None (连续时间)。必须指定为关键字参数,例如
dt=0.1
。
注意
更改不属于 StateSpace 系统表示形式的属性(例如 zeros 或 poles)的值效率非常低,并可能导致数值不准确。最好先转换为特定的系统表示形式。例如,在访问/更改 zeros、poles 或 gain 之前,请调用
sys = sys.to_zpk()
。方法
- to_tf(**kwargs)[source]#
将系统表示形式转换为 TransferFunction。
- 参数:
kwargs (dict, 可选) – 传递给 ss2zpk 的额外关键字参数
- 返回:
sys – 当前系统的传递函数
- 返回类型:
TransferFunction 的实例
- to_zpk(**kwargs)[source]#
将系统表示形式转换为 ZerosPolesGain。
- 参数:
kwargs (dict, 可选) – 传递给 ss2zpk 的额外关键字参数
- 返回:
sys – 当前系统的 zeros、poles、gain 表示形式
- 返回类型:
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 系统的直通矩阵。
- dt#
返回系统的采样时间,对于 lti 系统返回 None。
- poles#
系统的极点。
- zeros#
系统的零点。