iqm.error_reduction_tools.readout_characterization.readout_error_characterization.RECConfiguration#

class iqm.error_reduction_tools.readout_characterization.readout_error_characterization.RECConfiguration(num_circuits=50, shots=10000, qubits=None, seed=None, symmetrize=True, equatorial_randomization=True)#

Bases: object

Configuration for a readout error characterization (REC) experiment.

All parameters have sensible defaults so RECConfiguration() is valid and immediately usable.

Attributes

equatorial_randomization

When True, randomizes the phase angle of every X gate to average out coherent phase errors.

num_circuits

Number of calibration circuits to generate

qubits

Qubit names to characterize.

seed

Random seed for reproducible circuit generation.

shots

Total measurement shots distributed across all circuits.

symmetrize

When True, generates complementary preparation pairs so that each qubit is prepared in |0⟩ and |1⟩ equally often.

Methods

__eq__(other)

Return self==value.

__repr__()

Return repr(self).

Parameters:
  • num_circuits (int)

  • shots (int)

  • qubits (list[str] | None)

  • seed (int | None)

  • symmetrize (bool)

  • equatorial_randomization (bool)

num_circuits: int = 50#

Number of calibration circuits to generate

shots: int = 10000#

Total measurement shots distributed across all circuits. Each circuit receives shots // num_circuits shots.

qubits: list[str] | None = None#

Qubit names to characterize.

Non-operational qubits (those without a calibrated measure gate) are always excluded: they cannot be characterized or have readout error mitigation applied.

  • None (default): qubits are not pinned. When used standalone, this characterizes every operational qubit on the QPU; in the REMWorkflow it lets the workflow infer the qubits from the measured qubits of the input circuits.

  • list[str]: characterize exactly these qubit names, minus any that are not operational.

seed: int | None = None#

Random seed for reproducible circuit generation. None produces non-deterministic results.

symmetrize: bool = True#

When True, generates complementary preparation pairs so that each qubit is prepared in |0⟩ and |1⟩ equally often.

equatorial_randomization: bool = True#

When True, randomizes the phase angle of every X gate to average out coherent phase errors.