如何在netlogo中编写分段函数进行代理模拟?

时间:2015-10-30 15:13:18

标签: netlogo

我正在使用Netlogo进行Multi代理模拟,但在Netlogo中,没有合适的数学表达式来定义分段函数。 谁知道如何解决这个问题? 非常感谢!

2 个答案:

答案 0 :(得分:0)

to-report unitstep [#x]
  report ifelse-value (#x < 0) [0] [1]
end

修改 如果您想要多个步骤,您可以这样做:

to-report n-steps [#x]
  let steps [1 2 3]
  let n 0
  foreach steps [
    set n (n + unitstep (#x - ?))
  ]
  report n
end

答案 1 :(得分:0)

我认为最好将其功能性地写为报告

此代码段可能会有所帮助

to-report thing [X]
   ifelse x < 10 and x > 5 [report 3][report x ^ 2]
   end