iqm.qiskit_iqm.fake_backends.iqm_fake_backend.IQMErrorProfile

Contents

iqm.qiskit_iqm.fake_backends.iqm_fake_backend.IQMErrorProfile#

class iqm.qiskit_iqm.fake_backends.iqm_fake_backend.IQMErrorProfile(t1s: dict[str, float], t2s: dict[str, float], single_qubit_gate_depolarizing_error_parameters: dict[str, dict[str, float]], two_qubit_gate_depolarizing_error_parameters: dict[str, dict[tuple[str, str], float]], single_qubit_gate_durations: dict[str, float], two_qubit_gate_durations: dict[str, float], readout_errors: dict[str, dict[str, float]], name: str | None = None)#

Bases: object

Properties of an IQM QPU specimen, used for constructing an error model.

All the attributes of this class refer to the qubits of the QPU using their physical names.

Parameters:
  • t1s (dict[str, float]) – maps qubits to their \(T_1\) times (in ns)

  • t2s (dict[str, float]) – maps qubits to the \(T_2\) times (in ns)

  • single_qubit_gate_depolarizing_error_parameters (dict[str, dict[str, float]]) – Depolarizing error parameters for single-qubit gates. Maps single-qubit gate names to a mapping of qubits (on which the gate acts) to a depolarizing error. The error, used in a one-qubit depolarizing channel, concatenated with a thermal relaxation channel, leads to average gate fidelities that would be determined by benchmarking.

  • two_qubit_gate_depolarizing_error_parameters (dict[str, dict[tuple[str, str], float]]) – Depolarizing error parameters for two-qubit gates. Maps two-qubit gate names to a mapping of pairs of qubits (on which the gate acts) to a depolarizing error. The error, used in a two-qubit depolarizing channel, concatenated with thermal relaxation channels for the qubits, leads to average gate fidelities that would be determined by benchmarking.

  • single_qubit_gate_durations (dict[str, float]) – Gate duration (in ns) for each single-qubit gate

  • two_qubit_gate_durations (dict[str, float]) – Gate duration (in ns) for each two-qubit gate.

  • readout_errors (dict[str, dict[str, float]]) – Maps physical qubit names to dicts that describe their single-qubit readout errors. For each qubit, the inner dict maps the state labels “0” and “1” to the probability \(P(\neg x|x)\) of observing the state \(\ket{\neg x}\) given the true state is \(\ket{x}\).

  • name (str | None) – Identifier of the QPU specimen.

Example

IQMErrorProfile(
    t1s={"QB1": 10000.0, "QB2": 12000.0, "QB3": 14000.0},
    t2s={"QB1": 10000.0, "QB2": 12000.0, "QB3": 13000.0},
    single_qubit_gate_depolarizing_error_parameters={"r": {"QB1": 0.0005, "QB2": 0.0004, "QB3": 0.0010}},
    two_qubit_gate_depolarizing_error_parameters={"cz": {("QB1", "QB2"): 0.08, ("QB2", "QB3"): 0.03}},
    single_qubit_gate_durations={"r": 50.},
    two_qubit_gate_durations={"cz": 100.},
    readout_errors={"QB1": {"0": 0.02, "1": 0.03},
                    "QB2": {"0": 0.02, "1": 0.03},
                    "QB3": {"0": 0.02, "1": 0.03}},
    name="threequbit-example_sample"
)

Attributes

name

t1s

t2s

single_qubit_gate_depolarizing_error_parameters

two_qubit_gate_depolarizing_error_parameters

single_qubit_gate_durations

two_qubit_gate_durations

readout_errors

Methods

__eq__(other)

Return self==value.

__repr__()

Return repr(self).