Qubit Geometries
A Geometry defines the spatial arrangement and connectivity of qubits, typically represented as a graph structure. MonitoredQuantumCircuits.jl provides several commonly used geometries out of the box, facilitating the construction and analysis of quantum circuits on a variety of lattice types. Users may also implement custom geometries by following the geometry interface.
Available Geometries
ChainGeometry Represents a chain (one-dimensional) structure, supporting both periodic and open boundary conditions.
HoneycombGeometry Represents a honeycomb lattice structure, supporting both periodic and open boundary conditions.
ShastrySutherlandGeometry Represents a Shastry-Sutherland lattice.
API Reference
MonitoredQuantumCircuits.ChainGeometry Type
A data structure representing a one-dimensional chain geometry of qubits.
Constructors
ChainGeometry(Periodic, size::Integer)
Constructs a chain geometry with periodic boundary conditions (i.e., a closed loop).
ChainGeometry(Open, size::Integer)
Constructs a chain geometry with open boundary conditions (i.e., a linear chain).
Arguments
size::Integer
: The number of qubits in the chain.
Examples
# Create a chain of 8 qubits with periodic boundaries
geometry = ChainGeometry(Periodic, 8)
# Create a chain of 10 qubits with open boundaries
geometry = ChainGeometry(Open, 10)
MonitoredQuantumCircuits.HoneycombGeometry Type
A data structure representing a honeycomb lattice geometry.
Constructors
HoneycombGeometry(Periodic, sizeX::Integer, sizeY::Integer)
Create a honeycomb geometry with periodic boundary conditions.
HoneycombGeometry(Open, sizeX::Integer, sizeY::Integer)
Create a honeycomb geometry with open boundary conditions.
Arguments
sizeX::Integer
: Width of the latticesizeY::Integer
: Height of the lattice (must be even)
Examples
# Create a 4×4 honeycomb lattice with periodic boundaries
geometry = HoneycombGeometry(Periodic, 4, 4)
# Create a 6×6 honeycomb lattice with open boundaries
geometry = HoneycombGeometry(Open, 6, 6)
MonitoredQuantumCircuits.ShastrySutherlandGeometry Type
A data structure representing a Shastry-Sutherland lattice geometry.
Constructors
ShastrySutherlandGeometry(Periodic, sizeX::Integer, sizeY::Integer)
Construct a Shastry-Sutherland geometry with periodic boundary conditions.
Arguments
sizeX::Integer
: The number of sites in the x directionsizeY::Integer
: The number of sites in the y direction
Examples
# Create a 4×4 Shastry-Sutherland lattice with periodic boundaries
geometry = ShastrySutherlandGeometry(Periodic, 4, 4)