You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sympy传递函数转连续状态空间模型结果异常的技术咨询

SymPy控制模块传递函数转状态空间模型的符号转换问题

问题说明

我正在试用新版SymPy控制模块,对拉普拉斯传递函数转换为连续时间状态空间模型的符号计算结果存在疑问。

SymPy代码及输出

import sympy
assert sympy.__version__ >= '1.13.0'
from sympy.physics.control.lti import StateSpace, TransferFunction

s, K, T1 = sympy.symbols('s, K, T1')
G = TransferFunction(K, T1 * s + 1, s)
print(G)
Gss = G.rewrite(StateSpace)
print(Gss)

输出:

TransferFunction(K, T1*s + 1, s)
StateSpace(Matrix([[-1/T1]]), Matrix([[1]]), Matrix([[K]]), Matrix([[0]]))

对该模型仿真后发现,稳态增益比K高3倍。因此我认为C矩阵应为Matrix([[K/T1]])而非Matrix([[K]]),或对B矩阵进行类似调整。

Python Control库对比结果

使用Python Control库代入数值后,结果与我的预期一致:

import control as con

K = 2
T1 = 3
G = con.tf(K, [T1, 1])
print(G)
Gss = con.ss(G)
print(Gss)

输出:

<TransferFunction>: sys[14]
Inputs (1): ['u[0]']
Outputs (1): ['y[0]']


   2
-------
3 s + 1

<StateSpace>: sys[14]
Inputs (1): ['u[0]']
Outputs (1): ['y[0]']
States (1): ['x[0]']

A = [[-0.33333333]]

B = [[1.]]

C = [[0.66666667]]

D = [[0.]]

内容的提问来源于stack exchange,提问作者Bill

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 18:32:18