NeighbourhoodRule
A representation of a neighbourhood of a given LatticeCoordinate on a Lattice
A neighbourhood is defined in terms of a series of displacements applied to a candidate coordinate and a constraint that the candidate coordinate must satisfy.
Factories
neighbourhood_rule(string name, const List<LatticeCoord> deltas) -> NeighbourhoodRule
Constructor for a neighbourhood rule.
Parameters
- name: The name of the neighbourhood rule.
- deltas: A list of displacements defining the neighbourhood of an arbitrary coordinate.
neighbourhood_rule(string name, const List<LatticeCoord> deltas, Constraint constraint) -> NeighbourhoodRule
Constructor for a neighbourhood representing a collection of lattice sites.
Parameters
- name: The name of the neighbourhood rule.
- deltas: The displacements for the neighbourhood.
- constraint: The constraint function that candidate lattice sites must satisfy.
Constructors
NeighbourhoodRule(const NeighbourhoodRule neighbourhood_rule) -> NeighbourhoodRule
Constructs a copy of the given NeighbourhoodRule.
Parameters
- neighbourhood_rule: NeighbourhoodRule to be copied.
Symbols
| Name | Description |
|---|---|
= | Assignment operator for NeighbourhoodRule. |
Members
| Name | Description |
|---|---|
| at | Returns the neighbourhood of the given coordinate. |
| deltas | Returns the displacements for the NeighbourhoodRule. |
| name | Returns the name of the neighbourhood rule. |
| push_back | Add a displacement corresponding to the given primitive vector to the NeighbourhoodRule. |
| satisfied_by | Returns true if the given lattice coordinate satisfies the constraint |