Vensim中不同的时间步长不会得到相同的结果,如何解决?

时间:2019-05-20 14:44:27

标签: systemdynamics vensim

我正在Vensim中制作一个简单的模型。 该模型由库存和流出变量组成:

库存: 方程式 = INTEG(-“流出”),初始值:2.5

流出: 方程式 =如果THEN ELSE(stock> 0,MIN(stock,1),0)

模拟运行5年(初始时间= 0,最终时间= 5),时间单位为年。 我每年需要进行64次仿真,因此时间步长设置为“ 0.015625”。 我在这个时间步长上得到的结果不合逻辑,也不是我所期望的,但是通过设置“时间步长= 1”可以获得期望的结果。 如前所述,仿真每年需要运行64次,而时间步长= 1的仿真对我没有用。我怎么解决这个问题? 预先感谢。

1 个答案:

答案 0 :(得分:1)

为此,您可以将年的单位转换为天,四舍五入TIME STEP的天。

Units for Time = YearINITIAL TIME = 0FINAL TIME = 5TIME STEP = 1

IF THEN ELSE( stock > 0, MIN(stock, 1), 0)

before

转换后

Units for Time = DayINITIAL TIME = 0FINAL TIME = 1825TIME STEP = 6

IF THEN ELSE( stock/365 > 0, MIN(stock/365, 1/365), 0)

after