Determines which cells might be affected by boundary conditions. More...
Go to the source code of this file.
Functions | |
bool | edge_circle_intersect (const Edge &edge, const Circle &circle) |
Determines if an edge and a circle intersect. More... | |
void | find_affected_cells_recursive (const Tessellation &tess, int index, const Circle &circle, vector< int > &res, std::vector< Vector2D > &added, bool periodic, Vector2D const &ll, Vector2D const &ur) |
Recursively finds all cells that intersect a circle. More... | |
vector< int > | find_affected_cells (const Tessellation &tess, int index, Circle &circle, vector< int > &vtemp, bool periodic, std::vector< Vector2D > &periodic_add) |
Non recursive version of find affected cells. Only searches one degree of separation. More... | |
Determines which cells might be affected by boundary conditions.
Definition in file find_affected_cells.hpp.
Determines if an edge and a circle intersect.
Definition at line 63 of file find_affected_cells.cpp.
vector<int> find_affected_cells | ( | const Tessellation & | tess, |
int | index, | ||
Circle & | circle, | ||
vector< int > & | vtemp, | ||
bool | periodic, | ||
std::vector< Vector2D > & | periodic_add | ||
) |
Non recursive version of find affected cells. Only searches one degree of separation.
tess | Tessellation |
index | Cell index |
circle | Circle |
vtemp | Temperaroy object for not reallocating on heap |
periodic | Whether periodic boundary conditions are used |
periodic_add | List of points to add due to periodic boundary conditions |
Definition at line 136 of file find_affected_cells.cpp.
void find_affected_cells_recursive | ( | const Tessellation & | tess, |
int | index, | ||
const Circle & | circle, | ||
vector< int > & | res, | ||
std::vector< Vector2D > & | added, | ||
bool | periodic, | ||
Vector2D const & | ll, | ||
Vector2D const & | ur | ||
) |
Recursively finds all cells that intersect a circle.
tess | Tessellation |
index | Current cell index |
circle | Circle |
res | List of cell indices that intersect the circle |
added | The Vector2D to add to the duplicated point (for periodic boundaries) |
periodic | Flag if periodic boundaries |
ll | Lower left corner of the domain |
ur | Upper right corner of the domain |
Definition at line 174 of file find_affected_cells.cpp.