[ GAMB | Source | Keywords | Summary | Ancestors | All Members | Descendants ]
public: | |
// construction methods. | |
Interface(); | |
void | addAdjacency(unsigned int index1, unsigned int index2, float dist); |
void | buildHigherLevel(Interface& highLevelInterface, const vector< unsigned int>& group1, const vector< unsigned int>& group2); |
class | Adjacency ; |
// queries | |
bool | isAdjacent(unsigned int index1, unsigned int index2) const; |
bool | isInterface(unsigned int index1) const; |
unsigned int | size() const; |
unsigned int | adjacenciesNumber() const ; |
unsigned int | neighboursNumber(unsigned int index1) const; |
void | adjacencies(vector< Adjacency>& vAdj, unsigned int index1) const; |
const ParticleAdjacency& | adjacencies(unsigned int index1) const; |
void | neighboursIntersection(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& intersection) const; |
void | neighboursIntersection(unsigned int index1, unsigned int index2, vector< unsigned int>& intersection) const; |
void | neighboursUnion(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& nUnion) const; |
void | neighboursUnion(unsigned int index1, unsigned int index2, vector< unsigned int>& nUnion) const; |
class | iterator ; |
protected: | |
InterfaceAdjacency | interfaceAdjacency; |
unsigned int | adjacencyCounter; |
Copyright: SAMBA group, Tel-Aviv Univ. Israel, 1997.
Interface();
Construct a new interface.
Interface();
void addAdjacency(unsigned int index1, unsigned int index2, float dist);
add a pair of adjacent particles to the interface
void addAdjacency(unsigned int index1, unsigned int index2, float dist);
void buildHigherLevel(Interface& highLevelInterface, const vector< unsigned int>& group1, const vector< unsigned int>& group2);
create high level interface: this function is usefull when we are given
atomic interface and want to get residue interface instead
void buildHigherLevel(Interface& highLevelInterface, const vector< unsigned int>& group1, const vector< unsigned int>& group2);
class Adjacency ;
Class that stores a pair of adjacent particles and their distance
class Adjacency { public: Adjacency() {} Adjacency(unsigned int p1, unsigned int p2, float d): particle1(p1), particle2(p2), distance(d) {} Adjacency(const Interface::Adjacency& a): particle1(a.particle1), particle2(a.particle2), distance(a.distance) {} unsigned int first() const { return particle1; } unsigned int second() const { return particle2; } float dist() const { return distance; } void setDistance(float dist) { distance = dist; } friend ostream& operator<<(ostream& s, const Adjacency& adjacency) { s << adjacency.first() << ' ' << adjacency.second() << ' ' <<adjacency.dist() <<endl; return s; } protected: unsigned int particle1, particle2; float distance; };
Function is currently defined inline.
bool isAdjacent(unsigned int index1, unsigned int index2) const;
Return true if the two particles are neighbours
bool isAdjacent(unsigned int index1, unsigned int index2) const;
bool isInterface(unsigned int index1) const;
Return true if the particles belongs to interface
bool isInterface(unsigned int index1) const;
unsigned int size() const;
Returns number of particles in interface
unsigned int size() const;
unsigned int adjacenciesNumber() const ;
Returns number of adjacencies (couples of particles in interface).
unsigned int adjacenciesNumber() const ;
Function is currently defined inline.
unsigned int neighboursNumber(unsigned int index1) const;
Returns number of neighbours of a given particle
unsigned int neighboursNumber(unsigned int index1) const;
void adjacencies(vector< Adjacency>& vAdj, unsigned int index1) const;
return all the neighbours of a given particle
void adjacencies(vector< Adjacency>& vAdj, unsigned int index1) const;
const ParticleAdjacency& adjacencies(unsigned int index1) const;
return ParticleAdjacency for a given index
const ParticleAdjacency& adjacencies(unsigned int index1) const;
void neighboursIntersection(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& intersection) const;
return the intersection of neighbours of two particle adjacencies
void neighboursIntersection(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& intersection) const;
void neighboursIntersection(unsigned int index1, unsigned int index2, vector< unsigned int>& intersection) const;
return the intersection of neighbours of two indices
void neighboursIntersection(unsigned int index1, unsigned int index2, vector< unsigned int>& intersection) const;
void neighboursUnion(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& nUnion) const;
return the union of neighbours of two particle adjacencies
void neighboursUnion(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& nUnion) const;
void neighboursUnion(unsigned int index1, unsigned int index2, vector< unsigned int>& nUnion) const;
return the union of neighbours of two indices
void neighboursUnion(unsigned int index1, unsigned int index2, vector< unsigned int>& nUnion) const;
class iterator ;
Interface iterator
class iterator { public: iterator(); iterator(InterfaceAdjacency::iterator iInterfaceAdjIt, ParticleAdjacency::iterator iParticleAdjIt, InterfaceAdjacency::iterator iInterfaceAdjacencyEnd); iterator operator++(); const Adjacency& operator*() const; bool operator==(const Interface::iterator& it1) const; bool operator!=(const Interface::iterator& it1) const; protected: InterfaceAdjacency::iterator interfaceAdjIt; ParticleAdjacency::iterator particleAdjIt; InterfaceAdjacency::iterator interfaceAdjacencyEnd; };
Function is currently defined inline.
InterfaceAdjacency interfaceAdjacency;
Interface container
InterfaceAdjacency interfaceAdjacency;
unsigned int adjacencyCounter;
Number of pairs in interface
unsigned int adjacencyCounter;
public: | ||
---|---|---|
// construction methods. | ||
void | addAdjacency(unsigned int index1, unsigned int index2, float dist); | |
void | buildHigherLevel(Interface& highLevelInterface, const vector< unsigned int>& group1, const vector< unsigned int>& group2); | |
class | Adjacency ; | |
// queries | ||
bool | isAdjacent(unsigned int index1, unsigned int index2) const; | |
bool | isInterface(unsigned int index1) const; | |
unsigned int | size() const; | |
unsigned int | adjacenciesNumber() const ; | |
unsigned int | neighboursNumber(unsigned int index1) const; | |
void | adjacencies(vector< Adjacency>& vAdj, unsigned int index1) const; | |
const ParticleAdjacency& | adjacencies(unsigned int index1) const; | |
void | neighboursIntersection(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& intersection) const; | |
void | neighboursIntersection(unsigned int index1, unsigned int index2, vector< unsigned int>& intersection) const; | |
void | neighboursUnion(const ParticleAdjacency& pa1, const ParticleAdjacency& pa2, vector< unsigned int>& nUnion) const; | |
void | neighboursUnion(unsigned int index1, unsigned int index2, vector< unsigned int>& nUnion) const; | |
class | iterator ; | |
protected: | ||
InterfaceAdjacency | interfaceAdjacency; | |
unsigned int | adjacencyCounter; |
Report problems to jkotula@unimax.com