Math Netlogo植绒模型代码说明

Math Netlogo植绒模型代码说明,math,netlogo,Math,Netlogo,我正在调查netlogo的群集模型。它有以下奇怪的代码。这段代码在数学上做什么? 如果我能在数学符号中看到这一点,我就会理解这一点。我想这就是三角学在netlogo中的实现方式 to heading turn-towards average-heading max-align-turn end to-report average-heading let x-component sum [dx] of flock let y-component sum [dy] of flock

我正在调查netlogo的群集模型。它有以下奇怪的代码。这段代码在数学上做什么? 如果我能在数学符号中看到这一点,我就会理解这一点。我想这就是三角学在netlogo中的实现方式

to heading
  turn-towards average-heading max-align-turn
end

to-report average-heading
  let x-component sum [dx] of flock
  let y-component sum [dy] of flock
  ifelse x-component = 0 and y-component = 0
    [ report heading ]
    [ report atan x-component y-component ]
end

to turn-towards [new-heading max-turn]
  turn-at-most (subtract-headings new-heading heading) max-turn
end

to turn-at-most [turn max-turn]
  ifelse abs turn > max-turn
    [ ifelse turn > 0
        [ rt max-turn ]
        [ lt max-turn ] ]
    [ rt turn ]
end
是海龟航向的正弦和余弦,所以我们看的是

程序报告 乌龟类标题的正弦和的反正切,乌龟类标题的余弦和


这就是角度集合的平均航向,很明显,如果我们把航向加起来,除以海龟的数量,我们会遇到很多问题

这是一个平均航向吗?对不起。是的,这是平均标题,好的,谢谢。这个代码似乎实现了循环量的平均值?我错过了阿坦的辩论
to-report average-heading
  let x-component sum [dx] of flock
  let y-component sum [dy] of flock
 ifelse x-component = 0 and y-component = 0
   [ report heading ]
   [ report atan x-component y-component ]
end