种子在树周围散布会引发无限循环?

时间:2018-06-11 17:49:50

标签: netlogo

我刚刚开始了一个项目,我打算模拟(除其他外)树木周围的种子传播(命名为zsps)。由于生育率低,邻近的斑块已经可以解决或无法播种。 我编写的代码运行(在模拟开始时),但是这使得代码进入无限循环(我认为),因为有些树会尝试传播种子但却找不到任何可用的地方。

有没有人有办法摆脱这个陷阱(如果地方的数量是<种子的数量或者根本没有地方的话)?

这是我写的程序:

to check-seed-dispersal
  ask zsps[
    let nb-seeds 0
    ifelse (age > 4) [set NFemFlowers 100] 
    [set NFemFlowers 0]
    let temp-color color
    if Tot_pol > 0
    [set nb-seeds round ((NFemFlowers / Tot_pol) * 6 ) ]
    if (nb-seeds > 0 )[     
      ask patches in-radius 5 with [fertility > 8 and not any? zsps-here]   
      [sprout-zsps  nb-seeds 
        [ifelse (temp-color = yellow)
          [set color gray set age 0 ] 
          [set color red  set age 0 ] 
        ]
      ]
    ]
  ]
end

0 个答案:

没有答案