Netlogo 我如何将一个特定的方程式应用于所有海龟?

Netlogo 我如何将一个特定的方程式应用于所有海龟?,netlogo,Netlogo,当我将一个等式应用于所有海龟(节点取自数据库)时,第一个值只计算出来,其余的重复计算? 每个节点都有不同的值(a、b、c、d) 有没有别的办法代替问海龟??我不知道怎么了 ask turtles [ set total (a+b)*w +(d+c)* w1 / 4] 这是代码执行 (海龟14):0.0018243246 (海龟21):0.0018243246 (海龟35):0.0018243246 (海龟19):0.0018243246 (海龟24):0.0018243246 (海龟3

当我将一个等式应用于所有海龟(节点取自数据库)时,第一个值只计算出来,其余的重复计算? 每个节点都有不同的值(a、b、c、d) 有没有别的办法代替问海龟??我不知道怎么了

  ask turtles [ set total  (a+b)*w +(d+c)* w1 / 4] 
这是代码执行 (海龟14):0.0018243246 (海龟21):0.0018243246 (海龟35):0.0018243246 (海龟19):0.0018243246 (海龟24):0.0018243246 (海龟39):0.0018243246 (海龟15):0.0018243246 (海龟54):0.0018243246 (海龟40):0.0018243246 (海龟47):0.0018243246 (海龟36):0.0018243246 (海龟60):0.0018243246 (海龟41):0.0018243246 (海龟20):0.0018243246
(海龟31):0.0018243243246

由于您没有提供任何变量的值,因此没有足够的信息来回答您的问题。正如我在上一个(现已删除)问题上所建议的,您需要检查进入方程的变量是否与您所认为的相同。例如:

ask turtles
[ type "a is " print a
  type "b is " print b
  type "c is " print c
  type "d is " print d
  type "w is " print w
  type "w1 is " print w1
  set total  (a+b)*w +(d+c)* w1 / 4
  print total
] 

没有足够的信息来回答您的问题,因为您没有提供任何变量的值。正如我在上一个(现已删除)问题上所建议的,您需要检查进入方程的变量是否与您所认为的相同。例如:

ask turtles
[ type "a is " print a
  type "b is " print b
  type "c is " print c
  type "d is " print d
  type "w is " print w
  type "w1 is " print w1
  set total  (a+b)*w +(d+c)* w1 / 4
  print total
] 

正如有人已经指出的那样,似乎没有提供足够的信息。从我所看到的,您可能想要创建一个turtles自己的变量。这就给了每只海龟自己的变量。例如,如果给海龟一个100的健康变量,每只海龟都可以独立地改变它们的健康值。我不确定这是否是您想要的,尽管有人已经说过,似乎没有提供足够的信息。从我所看到的,您可能想要创建一个turtles自己的变量。这就给了每只海龟自己的变量。例如,如果给海龟一个100的健康变量,每只海龟都可以独立地改变它们的健康值。我不确定这是否是你想要的,尽管每个节点的中心值不同。我删除了前一个问题,因为它变得不可理解,并且不适合在问题中编写完整的代码。我的建议不是问不同的变量代表什么,这是为了打印出变量的值,看看它们是否和你想象的一样。很多这类问题都是因为值为0,因为它没有被设置。所以我给你一个调试过程。你声称a、b等的值不同,但你还没有打印出来证明这一点。如果海龟有不同的值,那么方程会给出不同的答案。因为它没有给出不同的答案,所以有一些错误,但我们不能简单地猜测可能是什么。变量直接打印在csv文件中,这不会改变我的答案。如果每个海龟的输入不同,那么代码将正确地从同一个等式生成不同的结果。诊断此问题的唯一方法是打印输入变量值,以查看哪些变量错误。在应用方程式之前,您需要为每个变量输入print语句,以查看方程式中输入的值。然后,您可以进一步回溯,看看为什么它是错误的。错误不在您提供的行中,您拒绝提供任何其他代码或数字。你认为我们能做什么?a b c d是每个节点的中心度的不同值。我删除了前面的问题,因为它变得不可理解,在问题中编写完整的代码是不合适的。我的建议不是问不同的变量代表什么,这是为了打印出变量的值,看看它们是否和你想象的一样。很多这类问题都是因为值为0,因为它没有被设置。所以我给你一个调试过程。你声称a、b等的值不同,但你还没有打印出来证明这一点。如果海龟有不同的值,那么方程会给出不同的答案。因为它没有给出不同的答案,所以有一些错误,但我们不能简单地猜测可能是什么。变量直接打印在csv文件中,这不会改变我的答案。如果每个海龟的输入不同,那么代码将正确地从同一个等式生成不同的结果。诊断此问题的唯一方法是打印输入变量值,以查看哪些变量错误。在应用方程式之前,您需要为每个变量输入print语句,以查看方程式中输入的值。然后,您可以进一步回溯,看看为什么它是错误的。错误不在您提供的行中,您拒绝提供任何其他代码或数字。你认为我们能做什么?