【发布时间】:2013-08-26 14:34:47
【问题描述】:
背景:我有一个复杂的机械振荡系统。通过类比,我把它变成了一个电路(每个元件都是一个 RLC 振荡器)。计算电路的唯一方法是节点分析,手工计算过于复杂。
由于没有Symbolic Math Toolbox和SimPowerSystems工具箱,所以没有方便的方法来计算传递函数G(s)来使用传递函数块。
所以我考虑过使用自定义函数,但是在查阅了文档后我还是很无奈。我希望在这里找到一些初步的想法。
我的系统可以用矩阵方程来描述:
A*x = y
其中 A 是一个 8x8 矩阵,包含我电路的 RLC 阻抗,所以基本上每个元素都是多项式 Z(s) 例如Z_11(s) = (s^1+2s^0)/(s^2+3s-s^-1) 其中s 是拉普拉斯域变量。向量x 是一个 8x1 行向量,包含我的 8 个标量输出。而y 是一个 8x1 行向量,其元素要么是我的 4 个输入信号之一,要么是 0。
最后我需要一个具有 4 个输入和 8 个输出的 Simulink 模块,它可以求解以 s 为变量的线性方程组。
我可以想象使用 4 个块,每个块只有一个输入(将其他输入设置为“零”)并将它们叠加。也可以考虑只选择一个输出。
有什么方法可以实现吗?如何创建一个在拉普拉斯域而不是时域工作的块?
【问题讨论】:
标签: matlab simulink equation-solving