Skip to content

num::neighbor_query_2d

Defined in header <spatial/concepts.hpp>

template <class L, class Scalar = real>
concept neighbor_query_2d =
    field<Scalar> &&
    requires(const L &list, Scalar px, Scalar py) { list.query(px, py, [](int) {}); };

Structure answering which particles lie near a point.

The contract is a visitor rather than a returned container: query calls f(j) for each candidate, so nothing allocates in the inner loop.