Engee 文档

代数循环

代数循环是建模中的一种情况,其中一个或多个块的输入通过连接链直接取决于它们的输出而没有时间延迟。 结果,存在系统无法在单个时间步长内自行解决的循环依赖性,从而导致错误。 这种循环关系,其中信号影响自身,被称为闭合电路或环路。

例如,有一个带有块的模型 添加。 信号从其输出发送到*Add*块的输入,这导致形成闭环和系统误差*代数环*:

algebraic loop article

在这种情况下,代数循环问题的解决方案将是信号线的正确连接,其中*Add*块不会自行关闭。 转到具有代数循环错误的块,并通过正确设置信号线或添加块来纠正它 Delay 于反向信号。

algebraic loop article 2 cn

*Engee*不打破代数循环。 如果存在这样的循环,模拟将停止,并且诊断窗口中的错误将显示它发生在哪个块中。

如果*Engee*无法在一定次数的迭代中求解方程,则会在 诊断窗口。 因此,应该避免使用代数循环建模系统。

如何处理代数循环:

  • 使用块 Transport DelayUnit Delay 通过引入小延迟来打破闭合电路;

  • 更改架构结构以消除直接变量依赖关系的需要。

有用的连结