Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
添加自己的链接和海龟自己的netlogo_Netlogo - Fatal编程技术网

添加自己的链接和海龟自己的netlogo

添加自己的链接和海龟自己的netlogo,netlogo,Netlogo,这是因为a+b与该面片坐标处的b值相加 我正在尝试用链接做同样的事情。简短回答,你不能 您的示例之所以有效(或者如果您设置了a+b并提供了x、y等的值,您会这样做),是因为您要求turtles这样做(在NetLogo术语中,是在turtle上下文中完成的)。也就是说,海龟知道自己的“a”值,并且可以访问唯一的“b”值,因为海龟只站在一个补丁上。如果您尝试使用ask补丁而不是ask turtles执行相同的代码,您将得到一个错误。这是因为一个补丁无法识别站在上面的可能有很多海龟中的哪一只来提供“a

这是因为a+b与该面片坐标处的b值相加


我正在尝试用链接做同样的事情。

简短回答,你不能

您的示例之所以有效(或者如果您设置了a+b并提供了x、y等的值,您会这样做),是因为您要求turtles这样做(在NetLogo术语中,是在turtle上下文中完成的)。也就是说,海龟知道自己的“a”值,并且可以访问唯一的“b”值,因为海龟只站在一个补丁上。如果您尝试使用
ask补丁
而不是
ask turtles
执行相同的代码,您将得到一个错误。这是因为一个补丁无法识别站在上面的可能有很多海龟中的哪一只来提供“a”的值

因为一只海龟可以与任何数量的其他海龟链接,所以它可以有很多链接。这意味着没有足够的信息让海龟知道哪个链接提供“c”的值。但有些事情你可以做

选项1:随机选择它所连接的一个链接

turtles-own [ a ]
patches-own [b ]
links-own [ c ]

to a+b
ask turtles with [ pxcor = x and pycor = y ][ set a + b ]
end
turtles-own [ a ]
links-own [ c ]

to a+b
  ask turtles [ set a a + [c] of one-of my-links ]
end
选项2:将连接到的所有链接的“c”值相加

turtles-own [ a ]
patches-own [b ]
links-own [ c ]

to a+b
ask turtles with [ pxcor = x and pycor = y ][ set a + b ]
end
turtles-own [ a ]
links-own [ c ]

to a+b
  ask turtles [ set a a + [c] of one-of my-links ]
end
或者你可以选择最大的“c”值等


要解决编码问题,您需要了解海龟应该如何选择一个或多个链接以提供要添加的值。

如果存在相关性,您将如何同时更新link变量和ask turtles变量我不理解。请提出一个新问题(不要编辑此问题),并举例说明您想做什么,以及您试图用代码做什么it@user13745291如果答案解决了您的问题,请接受它-参见