我在流行病算法中工作,我使用八卦算法和SIR模型的组合。 我要做的部分工作是改变邻居海龟之一的颜色,等待3.0,然后将另一只颜色着色,直到所有海龟都变成绿色。
但我的程序只执行一次该功能。现在如何让我的海龟每次等待3.0滴,然后给邻居上色。
这个代码:
to setup
clear-all
reset-ticks
crt 100
set color blue
end
to go
wait 3.0
ask one-of out-link-neighbors with [color = blue] [
set color green
ask (link-with myself) [
set color green - 3
]
]
tick
end
谢谢大家。
答案 0 :(得分:1)
你的go命令中的wait会停止执行(以秒为单位)。你想要做的是在刻度线上涂上颜色。因此,相反,您希望将刻度修改为3,每当余数为0时,将其设为绿色。
to go
if ticks mod 3 = 0
[
ask one-of out-link-neighbors with [color = blue]
[
set color green
ask (link-with myself) [set color green - 3]
]
]