numerics 0.1.0
Loading...
Searching...
No Matches
num::CellList2D< Scalar > Class Template Reference

#include <cell_list.hpp>

Public Member Functions

 CellList2D (Scalar cell_size, Scalar xmin, Scalar xmax, Scalar ymin, Scalar ymax)
 
template<typename PosAccessor >
void build (PosAccessor &&get_pos, int n)
 Rebuild by counting-sort over cell ids.
 
template<typename F >
void query (Scalar px, Scalar py, F &&f) const
 Call f(j) for candidate particles near (px, py).
 
template<typename F >
void iterate_pairs (F &&f) const
 Visit each candidate pair once.
 
IntRange cell_particles (int cx, int cy) const noexcept
 
int nx () const noexcept
 
int ny () const noexcept
 
int n_particles () const noexcept
 

Detailed Description

template<typename Scalar>
class num::CellList2D< Scalar >

Definition at line 23 of file cell_list.hpp.

Constructor & Destructor Documentation

◆ CellList2D()

template<typename Scalar >
num::CellList2D< Scalar >::CellList2D ( Scalar  cell_size,
Scalar  xmin,
Scalar  xmax,
Scalar  ymin,
Scalar  ymax 
)
inline

Definition at line 25 of file cell_list.hpp.

Member Function Documentation

◆ build()

template<typename Scalar >
template<typename PosAccessor >
void num::CellList2D< Scalar >::build ( PosAccessor &&  get_pos,
int  n 
)
inline

Rebuild by counting-sort over cell ids.

Definition at line 39 of file cell_list.hpp.

◆ cell_particles()

template<typename Scalar >
IntRange num::CellList2D< Scalar >::cell_particles ( int  cx,
int  cy 
) const
inlinenoexcept

Definition at line 120 of file cell_list.hpp.

◆ iterate_pairs()

template<typename Scalar >
template<typename F >
void num::CellList2D< Scalar >::iterate_pairs ( F &&  f) const
inline

Visit each candidate pair once.

Definition at line 81 of file cell_list.hpp.

◆ n_particles()

template<typename Scalar >
int num::CellList2D< Scalar >::n_particles ( ) const
inlinenoexcept

Definition at line 127 of file cell_list.hpp.

◆ nx()

template<typename Scalar >
int num::CellList2D< Scalar >::nx ( ) const
inlinenoexcept

Definition at line 125 of file cell_list.hpp.

◆ ny()

template<typename Scalar >
int num::CellList2D< Scalar >::ny ( ) const
inlinenoexcept

Definition at line 126 of file cell_list.hpp.

◆ query()

template<typename Scalar >
template<typename F >
void num::CellList2D< Scalar >::query ( Scalar  px,
Scalar  py,
F &&  f 
) const
inline

Call f(j) for candidate particles near (px, py).

Definition at line 61 of file cell_list.hpp.

Referenced by num::VerletList2D< Scalar >::build().


The documentation for this class was generated from the following file: