28 #ifndef __VICINITY_H__ 29 #define __VICINITY_H__ 101 Cvicinity(std::vector<Cmomentum> &_particle_list);
110 void set_particle_list(std::vector<Cmomentum> &_particle_list);
117 void build(
Cmomentum *_parent,
double _VR);
133 #ifdef USE_QUADTREE_FOR_STABILITY_TEST Implementation of a 2D quadtree.
Cvicinity_elm * ve_list
list of vicinity elements built from particle list (size=2*n)
std::vector< Cvicinity_elm * > vicinity
list of points in parent's vicinity
unsigned int vicinity_size
number of elements in vicinity
double cocircular_range
amount by which the angle can be varied while maintaining this point within co-circularity margin ...
std::vector< Cvicinity_inclusion > pincluded
the inclusion state of particles
a class to keep track of inclusion status in cone and in cocircular region while using minimal resour...
base class for dynamic coordinates management
double angle
angle with parent
int n_part
number of particles
Cvicinity_inclusion * is_inside
variable to tell if the particle is inside or outside the cone
double phi
phi coordinate of the center
double VR
radius of the vicinity
double VR2
squared radius of the vicinity
double eta
eta coordinate of the center
double inv_R_EPS_COCIRC
R / EPSILON_COCIRCULAR.
double pcy
parent centre (phi)
bool side
true if angle on the positive side, false otherwise
Cmomentum * v
pointer to the second borderline particle
double pcx
parent centre (eta)
bool cocirc
flag for particle inclusion in the border
list of element in the vicinity of a parent.
std::vector< Cmomentum > plist
the list of particles
bool cone
flag for particle inclusion in the cone
double inv_R_2EPS_COCIRC
R / (2*EPSILON_COCIRCULAR)
Cvicinity_inclusion()
default ctor
double R2
squared normal radius
element in the vicinity of a parent.
Cmomentum * parent
parent vector
std::list< Cvicinity_elm *> cocircular
list of elements co-circular with this one NB: empty list uses less mem than vector ...