We're celebrating World Quantum Day 2022! Join us

Module: cirq.devices

Device classes, qubits, and topologies, as well as noise models.


device module

grid_device_metadata module: Metadata subtype for 2D Homogenous devices.

grid_qubit module

insertion_noise_model module

line_qubit module

named_topologies module

noise_model module

noise_properties module: Classes for representing device noise.

noise_utils module

superconducting_qubits_noise_properties module: Class for representing noise on a superconducting qubit device.

thermal_noise_model module

unconstrained_device module


class ConstantQubitNoiseModel: Applies noise to each qubit individually at the start of every moment.

class Device: Hardware constraints for validating circuits.

class DeviceMetadata: Parent type for all device specific metadata classes.

class GridDeviceMetadata: Hardware metadata for homogenous 2d symmetric grid devices.

class GridQid: A qid on a 2d square lattice

class GridQubit: A qubit on a 2d square lattice.

class InsertionNoiseModel: Simple base noise model for inserting operations.

class LineQid: A qid on a 1d lattice with nearest-neighbor connectivity.

class LineQubit: A qubit on a 1d lattice with nearest-neighbor connectivity.

class LineTopology: A 1D linear topology.

class NamedTopology: A topology (graph) with a name.

class NoiseModel: Replaces operations and moments with noisy counterparts.

class NoiseModelFromNoiseProperties: Replaces operations and moments with noisy counterparts.

class NoiseProperties: Noise-defining properties for a quantum device.

class OpIdentifier: Identifies an operation by gate and (optionally) target qubits.

class SuperconductingQubitsNoiseProperties: Noise-defining properties for a superconducting-qubit-based device.

class SymmetricalQidPair: THIS CLASS IS DEPRECATED.

class ThermalNoiseModel: NoiseModel representing simulated thermalization of a qubit.

class TiltedSquareLattice: A grid lattice rotated 45-degrees.


average_error(...): Calculates the average error from the depolarization decay constant.

decay_constant_to_pauli_error(...): Calculates pauli error from the depolarization decay constant.

decay_constant_to_xeb_fidelity(...): Calculates the XEB fidelity from the depolarization decay constant.

decoherence_pauli_error(...): The component of Pauli error caused by decoherence on a single qubit.

draw_gridlike(...): Draw a grid-like graph using Matplotlib.

draw_placements(...): Draw a visualization of placements from small_graph onto big_graph using Matplotlib.

get_placements(...): Get 'placements' mapping small_graph nodes onto those of big_graph.

pauli_error_from_t1(...): Calculates the pauli error from T1 decay constant.

pauli_error_to_decay_constant(...): Calculates depolarization decay constant from pauli error.

xeb_fidelity_to_decay_constant(...): Calculates the depolarization decay constant from XEB fidelity.

Type Aliases


NO_NOISE Instance of cirq.devices.noise_model._NoNoiseModel

The trivial noise model with no effects.

This is the noise model used when a NOISE_MODEL_LIKE noise parameter is set to None.

UNCONSTRAINED_DEVICE Instance of cirq.devices.unconstrained_device._UnconstrainedDevice

A device with no constraints on operations or qubits.