Черепаха, которая не влияет на реализацию других черепах, но ускоряет реакцию - PullRequest
1 голос
/ 05 марта 2010

Я использую существующую модель в netlogo под названием Chemical Equilibrium и добавляю еще немного кода. Я хочу добавить черепах (катализатор), которые не влияют на реакцию / другие черепахи, но ускоряют реакцию ВПЕРЕД, которая была определена следующим образом:

to react-forward [t]
  ask t [ set color red ]
  set color green
  rt random-float 360
  jump 2
end

Я думал, что мне следует поставить переключатель и ползунок, превратить черепах в уайтмоль, или я делаю turtles-own [catalyst], а затем определить это, как я сделал с температурой и давлением. Я попробовал следующее, но это не сработало.

turtles-own [speed catalyst]
  crt whitemols
  [ set color white
    randomize
    set speed 1
  ]

Я знаю, что приведенный выше код неверен, но я не уверен, как кодировать эту особенность.

1 Ответ

2 голосов
/ 05 марта 2010

Конечно, есть много способов сделать это. Я не могу сказать, что происходит в вашей программе, из того небольшого фрагмента, который вы включили.

Один из способов - катализатор другой породы:

breed [catalysts catalyst]
breed [chemical-x chemical-x]
;and so on

;then the forward reaction is sped up by the existence of catalysts

to react-forward
  let num-catalysts count catalysts
  ;speed up by num-catalysts
  ;...
end
...