-1

screenshot of my model

In the basic first order positive feedback model:

(one stock, one flow to it and a parameter gives the flow rate).

There is a stock with initial value of 100, a parameter with the value of 0.1 and the formula of the flow is:

(flow = stock * paremeter)

Model time units are "years" and we want to run the simulation for 100 years.

The value of the stock over the years will be 100, 110, 121, 133.1, 146.41 ...

But the values of the stock over time on the simulation screen (or when I put it into a Time Plot or Data set) are 110.517, 122.139, 134.984, 149.179.


  • Why are the values of the stock over time are different than the expected ones above?

  • How can I track the value of the stock over years correctly?

4

1 回答 1

1

这个问题是对系统动力学的典型误解。系统动力学遵循微分方程,一般使用欧拉法计算每个微分时间步后 Stock 的新值。您误以为该值每年更新 1 次,但事实并非如此。它每 0.001 个时间单位更新 1 次(大约使用默认值)。

我在这里对这个问题给出了更广泛的答案: AnyLogic 中的系统动力学 - 斐波那契数列

于 2018-11-23T12:45:44.083 回答