Netlogo - 为什么忽略“if”语句?

时间:2021-04-09 09:41:43

标签: netlogo

我是 Netlogo 的新手,并试图模拟一个大脑网络(其中的一部分),其中海龟代表大脑区域,而“fclinks”代表这些大脑区域之间的联系,这些区域的重量应该会减少(“weight-edge ') 随着时间的推移。

这是一段代码:

ask fclinks
[ set weight-edge weight-edge - fc-change ]
; change thickness of links
ask fclinks
[ if weight-edge < 1000
  [ set shape "medium"
  ]
  if weight-edge < 500
  [ set shape "thin"
    ask symptom 3
    [ set color 15 ]
  ]
]
end

'symptom 3' 是另一个节点,如果权重边超过某个阈值(当权重边低于 500 时),它应该改变颜色。然而,在达到这个阈值之前,节点已经在改变颜色。

为什么会这样?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果权重较低,则节点会改变颜色 if weight-edge < 500 但您的问题的措辞方式我认为您不希望它在达到阈值之前改变颜色,因此颜色表示更高的权重。如果这是正确的解释,那么问题很简单,你有 < 而不是 >