|
| NBList () |
|
| ~NBList () override |
|
virtual void | Generate (BeadList &list1, BeadList &list2, bool do_exclusions=true) |
| Generate the neighbour list based on two bead lists (e.g. bead types)
|
|
virtual void | Generate (BeadList &list, bool do_exclusions=true) |
| Generate the neighbour list based on a single bead list.
|
|
void | setCutoff (double cutoff) |
| set the cutoff for the neighbour search
|
|
double | getCutoff () const |
| get the cutoff for the neighbour search
|
|
template<typename T > |
void | SetMatchFunction (T *object, bool(T::*fkt)(Bead *, Bead *, const Eigen::Vector3d &, double dist)) |
| match function for class member functions
|
|
void | SetMatchFunction (bool(*fkt)(Bead *, Bead *, const Eigen::Vector3d &, double)) |
| match function for static member functions or plain functions
|
|
template<typename pair_type > |
void | setPairType () |
| function to use a user defined pair type
|
|
| PairList ()=default |
|
virtual | ~PairList () |
|
void | AddPair (BeadPair *p) |
|
iterator | begin () |
|
const_iterator | begin () const |
|
iterator | end () |
|
const_iterator | end () const |
|
BeadPair * | front () |
|
BeadPair * | back () |
|
bool | empty () const |
|
Index | size () const |
|
void | Cleanup () |
|
BeadPair * | FindPair (Bead *e1, Bead *e2) |
|
const BeadPair * | FindPair (Bead *e1, Bead *e2) const |
|
partners * | FindPartners (Bead *e1) |
|
Neighbour list class.
Implements a simple N^2 neighbour search and stores neigbourlist with pair structure. User defined criteria can be added by SetMatchFunction. To only get every pair listed once, the SetMatchFunction can be used and always return that the pair is not stored.
Definition at line 39 of file nblist.h.
template<typename T >
void votca::csg::NBList::SetMatchFunction |
( |
T * | object, |
|
|
bool(T::* | fkt )(Bead *, Bead *, const Eigen::Vector3d &, double dist) ) |
|
inline |
match function for class member functions
SetMatchFunction can be used to specify additional criteria, weather two beads are added to the list of pairs or not. The function gets the two two beads and the distance vector as argument. If a pair should be added, the function should return true, otherwise false.
This function can also be used, in a situation where each pair needs only to be processed once, but the total number of pairs is to big to be stored in memory, e.g. to calculate rdf for huge systems. In this case, set a match function which always returns false (->no pair is added), and do the processing in the match function.
Definition at line 159 of file nblist.h.