我有一个时间延迟系统的特征方程式,我无法使用 Mathematica 中的StateSpaceModel
或TransferFunctionModel
命令定义它;因为这些命令仅适用于线性系统而没有延迟。
我的目的是在 Mathematica 8.0.1 中定义一个时间延迟系统,并为这样的系统绘制Bode Diagram和Nyquist Diagram:
g = ((s + 1) (1-E^(-2 s) + E^(-3 s)))/(s^2 + 2 s + 10)
答案 0 :(得分:0)
从文档来看,似乎MMA期望传递函数是多项式的。 TransferFunctionModel的doc页面说:
在 TransferFunctionModel [{NUM,书房},变种] num必须是多项式矩阵和 den可以指定为多项式 矩阵或只是共同点 多项式。
我见过的所有例子都在分母和分母中有多项式。
Matlab的波特率也不会产生纯粹的时间延迟。
有时听到建议使用指数的Padé近似。这可以使用mma函数PadeApproximant
来完成。
然而,这似乎仅对于相当低的频率(相位变化的前180度左右)有效,如here所述。