Combinatorial maps
CombinatorialSpaces has incomplete, experimental support for several combinatorial structures used in topological graph theory, such as combinatorial maps and rotation systems. For an introduction to rotation systems and their implementation, see this blog post at the AlgebraicJulia blog.
API docs
CombinatorialSpaces.CombinatorialMaps
— ModuleCombinatorial maps and related structures, as C-sets.
In topological graph theory and graph drawing, an embedded graph is a combinatorial structure representing a graph embedded in an (oriented) surface, up to equivalence under (orientation-preserving) homeomorphism. This module defines data structures for rotation systems, combinatorial maps, and other combinatorial objects describing embedded graphs.
CombinatorialSpaces.CombinatorialMaps.add_corolla!
— MethodAdd corolla to rotation graph, rotation system, or similar structure.
A corolla is a vertex together with its incident half-edges, the number of which is its valence. The rotation on the half-edges is the consecutive one induced by the half-edge part numbers.
CombinatorialSpaces.CombinatorialMaps.pair_half_edges!
— MethodPair together half-edges into edges.
CombinatorialSpaces.CombinatorialMaps.trace_edges
— MethodTrace edges of combinatorial map or similar, return a listing of cycles.
Usually the cycles will be pairs of half edges but in a hypermap the cycles can be arbitrary.
CombinatorialSpaces.CombinatorialMaps.trace_faces
— MethodTrace faces of combinatorial map or similar, returning list of cycles.
CombinatorialSpaces.CombinatorialMaps.trace_vertices
— MethodTrace vertices of combinatorial map or similar, returning a list of cycles.
CombinatorialSpaces.CombinatorialMaps.α
— MethodEdge permutation of combinatorial map or similar structure.
CombinatorialSpaces.CombinatorialMaps.σ
— MethodVertex permutation of combinatorial map or similar structure.
CombinatorialSpaces.CombinatorialMaps.ϕ
— MethodFace permutation of combinatorial map or similar structure.