Lattice element API
Element-centering trait types that let an AbstractSiteType declare whether its DOF lives on a vertex, bond, plaquette, or cell.
LatticeCore.AbstractLatticeElement — Type
AbstractLatticeElementAbstract supertype identifying which geometric element of a lattice a given degree of freedom lives on. The default for every AbstractSiteType is VertexCenter; other element_type overrides let the interface describe bond / plaquette / cell-centered variables such as dimers, gauge links, and flux variables without breaking existing site-centered code.
See dev/note/04_architecture/04_site_type/README.md for the two-approach strategy (line-graph versus multi-layer) that uses this trait.
LatticeCore.VertexCenter — Type
Vertex-centered element: a site in the usual sense (default).
LatticeCore.BondCenter — Type
Bond-centered element: the midpoint of an edge.
LatticeCore.PlaquetteCenter — Type
Plaquette-centered element: the centre of a face.
LatticeCore.CellCenter — Type
Cell-centered element: the centre of a 3D (or higher) cell.