Netlogo编程问题 - 化学平衡温度和压力实施

时间:2010-03-04 11:28:27

标签: computer-science simulation netlogo chemistry

我正在尝试在Netlogo中编写代码。我正在使用现有的模型化学平衡,并且我正在尝试实现以下内容:

海龟自己的[速度]

问问乌龟   [

;; set velocity ( ambient-temperature = 30 )
;; fd velocity
if temp  > 40 [ "speed" increases of turtles  ]  
ifelse temperature < 30 [ speed of turtles decreases]

;;到临时

但它似乎无法正常工作

(温度超过40,龟的速度增加 如果温度低于30,龟的速度会降低) 温度是模型上的滑块

压力同样如此   问乌龟   [

;; if pressure > 50 then speed increases of turtles
;; if pressure < 50 then speed decreases of turtles

;;压力

感谢

1 个答案:

答案 0 :(得分:2)

我认为你要做的是这样的事情:

turtles-own [speed]


to setup
  ca
  create-turtles 50 [
    set speed 1
  ]
end

to go
  ask turtles [
    if (temperature  > 40) [ 
      set speed min (list (speed + 1) 100) ;cap the speed at 100 otherwise it will shoot to infinity
    ]
    if (temperature < 30) [
      set speed max (list (speed - 1) 0); min speed is 0
    ]
    ;move
    forward speed
  ]  
end

我必须添加最小和最大速度(分别为0和100),否则速度会迅速变为无穷无尽。另外,“温度”是我模型中的滑块。