在Simulink中使用代数约束块时出错

时间:2014-07-13 15:26:23

标签: matlab simulink

我想使用代数约束块实现一个复杂的等式,但是我得到的错误如下

  

在时间0处解决包含'trial1 / Algebraic Constraint1 / Initial Guess'的代数循环问题。停止模拟。解决方案中可能存在单一性。如果模型正确,请尝试减小步长(通过减小固定步长或通过收紧误差容差)

我想解决的等式是

w1*r3*cosβ= w2r4(sinw2t + (r4*sin(2*w2*t)*cosβ)/(2*l2)).

基本上我必须将所有参数的值设置为常量并获得w2与时间的关系图...

你的帮助对我来说是非常有价值的。 还建议我是否可以通过任何其他方法解决。

Shows the implementation of the above equation

1 个答案:

答案 0 :(得分:1)

基本上,您在尝试计算之前使用solve块的结果。如果可能的话,可以通过在反馈路径中添加延迟来避免这种情况,但我认为这会改变模型的行为。

看看这个:

http://www.mathworks.com/matlabcentral/answers/95310-what-are-algebraic-loops-in-simulink-and-how-do-i-solve-them