votca 2025.1-dev
Loading...
Searching...
No Matches
votca::csg::NBListGrid Class Reference

#include <nblistgrid.h>

Inheritance diagram for votca::csg::NBListGrid:
Collaboration diagram for votca::csg::NBListGrid:

Classes

struct  cell_t

Public Member Functions

void Generate (BeadList &list1, BeadList &list2, bool do_exclusions=true) override
 Generate the neighbour list based on two bead lists (e.g. bead types)
void Generate (BeadList &list, bool do_exclusions=true) override
 Generate the neighbour list based on a single bead list.
Public Member Functions inherited from votca::csg::NBList
 NBList ()
 ~NBList () override
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
Public Member Functions inherited from votca::csg::PairList< Bead *, BeadPair >
 PairList ()=default
virtual ~PairList ()
void AddPair (BeadPair *p)
iterator begin ()
iterator end ()
BeadPairfront ()
BeadPairback ()
bool empty () const
Index size () const
void Cleanup ()
BeadPairFindPair (Bead *e1, Bead *e2)
partnersFindPartners (Bead *e1)

Protected Member Functions

void InitializeGrid (const Eigen::Matrix3d &box)
cell_tgetCell (const Eigen::Vector3d &r)
cell_tgetCell (const Index &a, const Index &b, const Index &c)
void TestBead (const Topology &top, cell_t &cell, Bead *bead)
void TestCell (const Topology &top, cell_t &cell, Bead *bead)

Protected Attributes

Eigen::Vector3d box_a_
Eigen::Vector3d box_b_
Eigen::Vector3d box_c_
Eigen::Vector3d norm_a_
Eigen::Vector3d norm_b_
Eigen::Vector3d norm_c_
Index box_Na_
Index box_Nb_
Index box_Nc_
tools::NDimVector< cell_t, 3 > grid_
Protected Attributes inherited from votca::csg::NBList
double cutoff_
 cutoff
bool do_exclusions_
 take into account exclusions from topolgoy
pair_creator_t pair_creator_
 the current bead pair creator function
std::unique_ptr< Functormatch_function_
Protected Attributes inherited from votca::csg::PairList< Bead *, BeadPair >
std::vector< BeadPair * > pairs_
std::map< Bead *, std::map< Bead *, BeadPair * > > pair_map_

Additional Inherited Members

Public Types inherited from votca::csg::PairList< Bead *, BeadPair >
using iterator
using const_iterator
typedef std::map< Bead *, BeadPair * > partners
using element_t
using pair_t
Static Public Member Functions inherited from votca::csg::NBList
static bool match_always (Bead *, Bead *, const Eigen::Vector3d &, double)
 standard match function
Protected Types inherited from votca::csg::NBList
using pair_creator_t = BeadPair *(*)(Bead *, Bead *, const Eigen::Vector3d &)
Static Protected Member Functions inherited from votca::csg::NBList
template<typename pair_type>
static BeadPairbeadpair_create_policy (Bead *bead1, Bead *bead2, const Eigen::Vector3d &r)
 policy function to create new bead types

Detailed Description

Definition at line 34 of file nblistgrid.h.

Member Function Documentation

◆ Generate() [1/2]

void votca::csg::NBListGrid::Generate ( BeadList & list,
bool do_exclusions = true )
overridevirtual

Generate the neighbour list based on a single bead list.

Reimplemented from votca::csg::NBList.

Definition at line 55 of file nblistgrid.cc.

◆ Generate() [2/2]

void votca::csg::NBListGrid::Generate ( BeadList & list1,
BeadList & list2,
bool do_exclusions = true )
overridevirtual

Generate the neighbour list based on two bead lists (e.g. bead types)

Reimplemented from votca::csg::NBList.

Definition at line 28 of file nblistgrid.cc.

◆ getCell() [1/2]

NBListGrid::cell_t & votca::csg::NBListGrid::getCell ( const Eigen::Vector3d & r)
protected

Definition at line 148 of file nblistgrid.cc.

◆ getCell() [2/2]

cell_t & votca::csg::NBListGrid::getCell ( const Index & a,
const Index & b,
const Index & c )
protected

◆ InitializeGrid()

void votca::csg::NBListGrid::InitializeGrid ( const Eigen::Matrix3d & box)
protected

Definition at line 71 of file nblistgrid.cc.

◆ TestBead()

void votca::csg::NBListGrid::TestBead ( const Topology & top,
NBListGrid::cell_t & cell,
Bead * bead )
protected

Definition at line 171 of file nblistgrid.cc.

◆ TestCell()

void votca::csg::NBListGrid::TestCell ( const Topology & top,
NBListGrid::cell_t & cell,
Bead * bead )
protected

Definition at line 179 of file nblistgrid.cc.

Member Data Documentation

◆ box_a_

Eigen::Vector3d votca::csg::NBListGrid::box_a_
protected

Definition at line 46 of file nblistgrid.h.

◆ box_b_

Eigen::Vector3d votca::csg::NBListGrid::box_b_
protected

Definition at line 46 of file nblistgrid.h.

◆ box_c_

Eigen::Vector3d votca::csg::NBListGrid::box_c_
protected

Definition at line 46 of file nblistgrid.h.

◆ box_Na_

Index votca::csg::NBListGrid::box_Na_
protected

Definition at line 48 of file nblistgrid.h.

◆ box_Nb_

Index votca::csg::NBListGrid::box_Nb_
protected

Definition at line 48 of file nblistgrid.h.

◆ box_Nc_

Index votca::csg::NBListGrid::box_Nc_
protected

Definition at line 48 of file nblistgrid.h.

◆ grid_

tools::NDimVector<cell_t, 3> votca::csg::NBListGrid::grid_
protected

Definition at line 50 of file nblistgrid.h.

◆ norm_a_

Eigen::Vector3d votca::csg::NBListGrid::norm_a_
protected

Definition at line 47 of file nblistgrid.h.

◆ norm_b_

Eigen::Vector3d votca::csg::NBListGrid::norm_b_
protected

Definition at line 47 of file nblistgrid.h.

◆ norm_c_

Eigen::Vector3d votca::csg::NBListGrid::norm_c_
protected

Definition at line 47 of file nblistgrid.h.


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