Anylogic-状态图-连续设置值

时间:2018-09-06 10:37:09

标签: java anylogic setvalue statechart

我正在尝试使用系统动力学对蒸汽网络进行建模。
有一个库存A流入库存B。
我实现了一个状态图,该状态图具有以下状态“ FillLevelMin”,“ FillLevelOk”和“ FillLevelMax”。当状态图进入某个状态时,我希望它影响流程的大小。到目前为止,我已经使用了set_Parameter(number)。如果我想将流量设置为恒定值,例如1000。

但是,无论何时状态为“ FillLevelMax”,我都希望将流设置为动态变量。现在,当进入状态时,流程将采用动态值,并保持这种状态。但是,只要状态图处于状态“ FillLevelMax”,我就希望流程根据动态变量更新其值。

知道这是否可能吗?

1 个答案:

答案 0 :(得分:0)

是的,有一种优雅的方式称为“内部转换”。设置您的状态,如下所示: enter image description here

确保过渡在状态内达到100%,并将超时设置为一个可接受的值(对于您的情况来说,这是相当常见的,但是请记住,重新评估的次数越多,模型得到的速度就越慢)。将其设置为仍可接受的最少频率的重复。

在操作代码中,您可以更新流量值。

PS:请注意,无论您多久更新一次,这仍然是离散的方法,不像系统动力学本身那样是连续的!