我正在试图要求称为“mosqs”的海龟创建一个距离特定半径内的补丁的距离列表,这样我最终可以在概率函数中使用该信息。但是,我似乎无法确定距离的一部分。首先,我创建一个名为“near”的变量,用于标识代理集半径内的补丁。接下来,我创建了x和y坐标的列表。我最近的方法是尝试创建一个名为“dist”的列表,要求代理集中的补丁打印出距离乌龟位置的距离(“自我”)。下面的代码给了我“预期的记者”错误,我不知道为什么。我也尝试过各种各样的东西,例如使用x和y坐标列表和distancexy命令,但我似乎无法让它工作。有什么建议?
谢谢,
丹
ask mosqs [
let nearby patch-set patches in-radius 2
let xs [pxcor] of nearby
let ys [pycor] of nearby
let dist (list (ask nearby[ print distance self]))
答案 0 :(得分:3)
这应该有效:
ask mosqs [
let nearby patches in-radius 2
let dist [distance myself] of nearby
]
请注意,patches in-radius 2
已经是一个补丁集,因此您无需在其上调用patch-set
。
请注意使用myself
来引用回调乌龟。 (distance self
无法正确,因为distance self
总是0。)
我不认为有必要在这里使用pxcor
和pycor
。