mountaindust / Planktos

ABM framework for dispersal modeling
https://planktos.readthedocs.io
GNU General Public License v3.0
5 stars 3 forks source link

Better search space for immersed boundary collisions #60

Closed mountaindust closed 1 year ago

mountaindust commented 1 year ago

The current method for shrinking the effective search space for potential immersed boundary elements that a given agent might collide with during an Euler step is HIGHLY sensitive to faster velocity movement. And we are currently doing a very coarse job of cutting down the search space.

The existing method searches within a ball centered at the start point of the Euler step (radius is the length of the Euler step without collision plus the largest immersed mesh element radius). This is extremely inefficient as it makes no use of the direction of travel. Instead, the search for mesh vertices should be along a cylinder centered on the Euler step line segment.

This is much higher priority than #42, and would be implemented within that static method (swarm._apply_internal_BC).