iqm.benchmarks.randomized_benchmarking.mirror_rb.mirror_rb.MirrorRandomizedBenchmarking#
- class iqm.benchmarks.randomized_benchmarking.mirror_rb.mirror_rb.MirrorRandomizedBenchmarking(backend_arg: IQMBackendBase | str, configuration: MirrorRBConfiguration)#
Bases:
BenchmarkMirror RB estimates the fidelity of ensembles of n-qubit layers.
Attributes
Methods
add_all_meta_to_dataset(dataset)Adds all configuration metadata and circuits to the dataset variable.
analysis_function(run)Analysis function for a MRB experiment.
execute(backend)Executes the benchmark.
name()Returns the name of the benchmark.
submit_single_mrb_job(backend_arg, qubits, ...)Submit fixed-depth MRB jobs for execution in the specified IQMBackend.
- Parameters:
backend_arg (IQMBackendBase | str)
configuration (MirrorRBConfiguration)
- static analysis_function(run: BenchmarkRunResult) BenchmarkAnalysisResult#
Analysis function for a MRB experiment.
- Parameters:
run (BenchmarkRunResult) – A MRB experiment run for which analysis result is created
- Returns:
AnalysisResult corresponding to MRB
- Return type:
- add_all_meta_to_dataset(dataset: Dataset) None#
Adds all configuration metadata and circuits to the dataset variable.
- Parameters:
dataset (Dataset) – The xarray dataset
- Return type:
None
- submit_single_mrb_job(backend_arg: IQMBackendBase, qubits: Sequence[int], depth: int, sorted_transpiled_circuit_dicts: dict[tuple[int, ...], list[IQMCircuit]]) dict[str, Any]#
Submit fixed-depth MRB jobs for execution in the specified IQMBackend.
- Parameters:
backend_arg (IQMBackendBase) – the IQM backend to submit the job
qubits (Sequence[int]) – the qubits to identify the submitted job
depth (int) – the depth (number of canonical layers) of the circuits to identify the submitted job
sorted_transpiled_circuit_dicts (dict[tuple[int, ...], list[IQMCircuit]]) – A dictionary containing all MRB circuits
- Returns:
Dict with qubit layout, submitted job objects, type (vanilla/DD) and submission time
- Return type:
- execute(backend: IQMBackendBase) Dataset#
Executes the benchmark.
- Parameters:
backend (IQMBackendBase) – the IQM backend to execute the benchmark on
- Returns:
The dataset containing all results and metadata of the benchmark execution
- Return type: