in src/braket/aws/aws_device.py [0:0]
def _construct_topology_graph(self) -> Graph:
"""
Construct topology graph. If no such metadata is available, return `None`.
Returns:
Graph: topology of QPU as a networkx `Graph` object.
"""
if hasattr(self.properties, "paradigm") and isinstance(
self.properties.paradigm, GateModelQpuParadigmProperties
):
if self.properties.paradigm.connectivity.fullyConnected:
return complete_graph(int(self.properties.paradigm.qubitCount))
adjacency_lists = self.properties.paradigm.connectivity.connectivityGraph
edges = []
for item in adjacency_lists.items():
i = item[0]
edges.extend([(int(i), int(j)) for j in item[1]])
return from_edgelist(edges)
elif hasattr(self.properties, "provider") and isinstance(
self.properties.provider, DwaveProviderProperties
):
edges = self.properties.provider.couplers
return from_edgelist(edges)
else:
return None