Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Anylogic-状态图-连续设置值_Java_Anylogic_Setvalue_Statechart - Fatal编程技术网

Java Anylogic-状态图-连续设置值

Java Anylogic-状态图-连续设置值,java,anylogic,setvalue,statechart,Java,Anylogic,Setvalue,Statechart,我正在尝试用系统动力学对蒸汽网络进行建模。 有一只股票A流入股票B。 我实现了一个状态图,它具有以下状态“FillLevelMin”、“FillLevelOk”和“FillLevelMax”。当状态图进入特定状态时,我希望它影响流的大小。现在,我已经使用了set_参数(number)。如果我想将流量设置为一个恒定值,例如1000,这非常有效 但是,我想在状态为“FillLevelMax”时将流设置为动态变量。现在,当进入状态时,流接受动态值的值,并保持这种状态。但是,只要状态图处于“FillLe

我正在尝试用系统动力学对蒸汽网络进行建模。
有一只股票A流入股票B。
我实现了一个状态图,它具有以下状态“FillLevelMin”、“FillLevelOk”和“FillLevelMax”。当状态图进入特定状态时,我希望它影响流的大小。现在,我已经使用了set_参数(number)。如果我想将流量设置为一个恒定值,例如1000,这非常有效

但是,我想在状态为“FillLevelMax”时将流设置为动态变量。现在,当进入状态时,流接受动态值的值,并保持这种状态。但是,只要状态图处于“FillLevelMax”状态,我希望流根据动态变量更新它的值


知道这是否可能吗?

是的,有一种称为“内部转换”的优雅方式。按如下方式设置您的状态:

确保转换是100%在状态内,并将超时设置为一个合适的值(对于您的情况,这是相当频繁的,但是请记住,您越频繁地重新评估它,您的模型就越慢)。将其设置为仍然可以接受的最不频繁的重复

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

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