You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The static methods _project_and_slide, _seg_intersect_2D, and (probably) _seg_intersect_3D_triangles are about as fast as they are going to be in Python/NumPy, but are still a major bottleneck. One only needs to run an FTLE solve with and without the immersed boundary structures to see the huge difference it makes.
Parallelization will likely do much to solve this problem, since these methods are typically called in a loop over all agents. This would need to be implemented in apply_boundary_conditions, where the loop is.
Another thing that may be considered: since all the action is in static methods, these methods could (relatively) easily be written in C to speed up each calculation to some degree.
The text was updated successfully, but these errors were encountered:
Instead of rewriting in C, maybe we can just jit compile these with Numba for the time being...? Numba also offers parallelization on either CPU or GPU, so we could really make this fast in a hurry!
The static methods _project_and_slide, _seg_intersect_2D, and (probably) _seg_intersect_3D_triangles are about as fast as they are going to be in Python/NumPy, but are still a major bottleneck. One only needs to run an FTLE solve with and without the immersed boundary structures to see the huge difference it makes.
Parallelization will likely do much to solve this problem, since these methods are typically called in a loop over all agents. This would need to be implemented in apply_boundary_conditions, where the loop is.
Another thing that may be considered: since all the action is in static methods, these methods could (relatively) easily be written in C to speed up each calculation to some degree.
The text was updated successfully, but these errors were encountered: