deltakit.explorer.qpu.PhysicalNoise#

class deltakit.explorer.qpu.PhysicalNoise(*, gate_noise: list[NoiseProfile] = <factory>, idle_noise: Callable[[Qubit, float], NoiseChannel] | None = None, reset_noise: list[NoiseProfile] = <factory>, measurement_noise_after: list[NoiseProfile] = <factory>, measurement_noise_before: list[NoiseProfile] = <factory>, measurement_flip: dict[type[_MeasurementGate], Callable[[_MeasurementGate], _MeasurementGate]] = <factory>, t1: float = 0, t2: float = 0, p_1_qubit_gate_error: float = 0, p_2_qubit_gate_error: float = 0, p_reset_error: float = 0, p_meas_qubit_error: float = 0, p_readout_flip: float = 0)#

Bases: NoiseParameters

Gets gate noise parameters given physical gate data

Parameters:
  • t1 (float) – \(T_1\) time (relaxation from \(\ket{1}\) to \(\ket{0}\)), seconds.

  • t2 (float) – \(T_2\) time (dephasing), seconds.

  • p_1_qubit_gate_error (float) – Probability of a flip while doing a 1-qubit gate.

  • p_2_qubit_gate_error (float) – Probability of a flip while doing a 2-qubit gate.

  • p_reset_error (float) – Probability of a flip while doing a reset.

  • p_meas_qubit_error (float) – Probability of incorrect measurement.

  • p_readout_flip (float) – Probability of a flip while measuring a qubit.

Returns:

noise_model – A NoiseParameters object representing the noise model of a QPU.

Return type:

NoiseParameters

Examples

>>> from deltakit.circuit import Qubit
>>> from deltakit.explorer import qpu
>>> noise_model = qpu.PhysicalNoise(
...     t1=20e-6,
...     t2=30e-6,
...     p_readout_flip=0.01,
...     p_1_qubit_gate_error=0.001,
...     p_2_qubit_gate_error=0.01,
...     p_reset_error=0.01,
...     p_meas_qubit_error=0.01,
... )

Methods#

PhysicalNoise.as_noise_profile_after_gate

Returns the noise profiles encapsulated by this object as a single generator of noise profiles.