代数环
*代数循环是指在建模过程中,一个或多个模块的输入通过一连串无时间延迟的链接直接依赖于其输出。这就形成了一种循环依赖关系,系统无法在单个时间步长内自行解决,从而导致误差。这种信号影响自身的循环依赖关系被称为闭合回路或环路。
例如,有一个带有 Add 块的模型。其输出信号被输入到 Add 块的输入端,从而形成闭合回路和 Algebraic Loop 系统误差:
在这种情况下,解决代数环路问题的办法是正确连接信号线,使 Add 块不会自行短路。转到出现代数循环错误的程序块,通过正确连接信号线或在返回信号中添加Delay 程序块来纠正错误。
*Engee*不会中断代数循环。如果存在这样的循环,模拟将停止,诊断窗口中的错误将显示发生在哪个区块。 |
如果 Engee 无法在一定的迭代次数内求解方程,则会在诊断窗口 中显示错误信息。因此,应避免使用代数循环系统建模。
如何处理代数循环
-
使用块Transport Delay 或Unit Delay ,通过引入小延迟来打破闭合回路;
-
修改电路结构,消除变量之间的直接依赖关系。