More generally an N -periodic graph (with N ∈ * ) can be represented using the vector model . This model conceptually follows the description of a crystal as a lattice and a pattern. Any point in the lattice is denoted by an offset o ∈ N , whose i-th coordinate is the offset along the i-th axis of the lattice compared to a fixed origin. An N -periodic graph is then defined by a pair (V, E) where V is the set of vertex identifiers and E ⊂ V × V × N is the set of edges. Any vertex in space is uniquely identified by a pair (v, o) ∈ V × N where v ∈ V is its vertex identifier and o ∈ N is the offset of the cell that contains the vertex. Let's note n = |V | the number of vertices per cell and identify V with the integer interval ⟦1, n⟧ so that each vertex identifier can be considered to be a number in ⟦1, n⟧. When working in a fixed cell, the vertices will simply be referred to by their vertex identifier. Finally, for most of the rest of this article N will be equal to 3 since nets are 3-dimensional, but the algorithms exposed in the rest of this section actually work for any dimension and CrystalNets.jl can identify 2-periodic and 1-periodic graphs as well.