目前,我正在构建一个关于意见动态的模型,并希望模型在某个全局变量global-participation-rate
保持不变的情况下自动停止。我可能应该包含类似
if stop-ticking? [stop]
在我的go程序中。报告看起来像这样:
to-report stop-ticking?
ifelse (??) = ?? [report true] [report false]
end
我应该使用什么代码检查全局是否在一定数量的滴答声中保持不变?
答案 0 :(得分:2)
最简单的方法是添加一个新的全局来保持计数。例如,(缩写names = map(lambda x: x[0] if (x[1] == sl) else None, students)
到global-participation-rate
):
gpr
答案 1 :(得分:1)
您需要参与率或总转化率或其他值的全局变量。然后,在扩散过程之后,您执行let new-adopters <calculation>
和if-else new-adopters = total-adopters [stop] [set total-adopters new-adopters]
如果您需要多个时间点比较,那么您需要创建一个列表而不是一个简单的值,并将新值添加到列表的末尾,并检查列表的末尾是否都是相同的数字。< / p>