我正在尝试在代码中增加死亡率,我希望乌龟在0.1时死亡或恢复。这是我的代码
;; simulating recovery (infectious to recovered)
ask turtles with [epi-state = infectious-code][
ifelse recovery-prob < 0.1 = true
[set epi-state recovered-code
set color green]
[die]
]
]
但是,当我运行代码时,我的图趋于在1个滴答声之后停止
您的问题是ifelse recovery-prob < 0.1 = true
。我不知道您的恢复概率设置为什么,但是此行始终为true或false。您可能想做的事情(以及您的评论中的内容)是:
ask turtles with [epi-state = infectious-code]
[ ifelse random-float 1 < recovery-prob
[ set epi-state recovered-code
set color green
]
[ die
]
]
请注意,您实际上不需要= true
部分。
例如,如果您将recovery-prob设置为0.05,则该条件对所有海龟都适用,并且它们都已恢复。如果将其设置为0.2(例如),则对所有乌龟都是假的,它们都会死亡。
我认为此块仍然存在逻辑问题。按照您的书写方式,任何传染性乌龟都会康复或立即死亡。传染性超过一刻的乌龟呢?