在主题中,我使用python/numpy/scipy进行一些数据分析,我想为一个离散系统创建一个LTI类的对象,指定(num,den,dt)或(0,poles,gain,dt),甚至(a,B,C,d,dt),但文档中从来没有提到如何做。在
尽管如此,仍然有一些函数,比如dsim/dstep/dimpulse,它们会获取一个LTI对象并用它来做一些事情,所以我想这是可能的。一旦我有了它,我想做一些事情,比如从一个表示转换到另一个表示(num/den->;zpk->;A,B,C,d),绘制Bode图,等等
另外,我完全不清楚一个(num,den,dt)表示是否会使用z或z^-1的系数,因为我不认为有一个明确的标准。在
似乎} 的文档,可以得到:
scipy.signal.lti
类只适用于连续时间系统。检查例如^{因此参数
^{pr2}$system
不能由lti
类的对象来实现。虽然scipy.signal.dlsim的文档确实声明它接受LTI实例,但我认为这是错误的。至少在scipy 0.10.0中,我得到:显然,
dlsim
也希望system
参数是元组。在我认为scipy有点不一致。一方面,您可以使用以下内容定义lti系统:
该系统的类型为:
^{pr2}$模拟系统的许多程序scipy.signal.ltisys公司对于这些类型的系统来说工作得很好,但是对于flat scipy中的系统则不是这样。在这里,您还可以使用以下方法定义不同的系统:
要想把它画出来,你可以做一些类似的事情:
由创建的对象信号.tfss只是一个具有状态空间矩阵的元组。要么我不太理解它(我碰巧没有那么多python经验),要么它相当混乱。在
相关问题 更多 >
编程相关推荐