simulate-in ( boids behaviors dt dim -- boids )


Vocabulary
boids.simulation

Inputs
boidsa sequence
behaviorsa sequence
dta number
dima sequence


Outputs
boidsa sequence


Word description
Advances the flock by one step and wraps positions within the given dimensions. The boids gadget supplies its current allocated size.

Definition


:: simulate-in ( boids behaviors dt dim -- boids )
boids [| boid |
boid boids behaviors
[ [ (force) ] keep weight>> v*n ] 2with map
vsum :> a boid vel>> a dt v*n v+
normalize :> vel boid pos>> vel dt v*n v+
dim wrap-pos-in :> pos pos vel <boid>
] map ;