uniqc.calibration.readout.calibrator module¶
Readout calibrator for single-qubit and two-qubit measurement errors.
Generates calibration circuits for all computational basis states, executes them on the given adapter, builds confusion matrices, and saves results to the calibration cache.
- class uniqc.calibration.readout.calibrator.ReadoutCalibrator(adapter, shots=1000, cache_dir=None, timeout=300.0, poll_interval=2.0)[source]¶
Bases:
objectCalibrates readout (measurement) errors for 1-qubit and 2-qubit systems.
- For 1-qubit: runs two circuits to build a 2×2 confusion matrix:
- [[P(0|0), P(1|0)],
[P(0|1), P(1|1)]]
- For 2-qubit: runs four circuits to build a 4×4 confusion matrix:
rows = measured outcome (00,01,10,11) cols = prepared state (00,01,10,11)
Results are automatically saved to
~/.uniqc/calibration_cache/with an ISO-8601calibrated_attimestamp.- Parameters:
adapter (QuantumAdapter) – A
QuantumAdapterinstance (e.g.DummyAdapter). Must implementsubmitandquerymethods.shots (int) – Number of measurement shots per calibration circuit.
cache_dir (str | pathlib.Path | None) – Directory to save calibration results. Defaults to
~/.uniqc/calibration_cache/.timeout (float)
poll_interval (float)
- calibrate_1q(qubit)[source]¶
Calibrate readout for a single qubit.
- Parameters:
qubit (int) – Qubit index.
- Returns:
qubit,type="readout_1q",confusion_matrix(tuple of tuples),assignment_fidelity,calibrated_at,backend. Supports dict-like access (result["confusion_matrix"]) for backward compatibility.- Return type:
A
ReadoutCalibrationResultdataclass with fields
- calibrate_2q(qubit_u, qubit_v)[source]¶
Calibrate joint readout for a two-qubit pair.
- Parameters:
- Returns:
qubit(tuple),type="readout_2q",confusion_matrix(tuple of tuples),assignment_fidelity,calibrated_at,backend. Supports dict-like access (result["confusion_matrix"]) for backward compatibility.- Return type:
A
ReadoutCalibrationResultdataclass with fields