iqm.benchmarks.coherence.coherence.CoherenceBenchmark#

class iqm.benchmarks.coherence.coherence.CoherenceBenchmark(backend_arg: IQMBackendBase, configuration: CoherenceConfiguration)#

Bases: Benchmark

This benchmark estimates the coherence properties of the qubits and computational resonator.

Attributes

name

Methods

_generate_t1_circuits(qc, nqubits, delay)

Generates T1 coherence circuits.

_generate_t2_echo_circuits(qc, nqubits, delay)

Generates T2 echo coherence circuits.

add_all_meta_to_dataset(dataset)

Adds all configuration metadata and circuits to the dataset variable

analysis_function(run)

Analysis function for a coherence experiment

checkerboard_groups_from_coupling(coupling_map)

Assign Group A and B to qubits based on a checkerboard pattern inferred from the connectivity graph (assumed to be grid-like).

execute(backend)

Executes the benchmark.

generate_coherence_circuits(nqubits)

Generates coherence circuits for the given qubit set and delay times.

Parameters:
static analysis_function(run: BenchmarkRunResult) BenchmarkAnalysisResult#

Analysis function for a coherence experiment

Parameters:

run (RunResult) – A coherence experiment run for which analysis result is created.

Returns:

AnalysisResult corresponding to coherence experiment.

Return type:

BenchmarkAnalysisResult

generate_coherence_circuits(nqubits: int) list[QuantumCircuit]#

Generates coherence circuits for the given qubit set and delay times.

Parameters:

nqubits (int) – Number of qubits to apply the coherence circuits on.

Returns:

List of generated coherence circuits.

Return type:

list[QuantumCircuit]

add_all_meta_to_dataset(dataset: Dataset)#

Adds all configuration metadata and circuits to the dataset variable

Parameters:

dataset (xr.Dataset) – The xarray dataset

checkerboard_groups_from_coupling(coupling_map: List[Tuple[int, int]]) Tuple[List[int], List[int]]#

Assign Group A and B to qubits based on a checkerboard pattern inferred from the connectivity graph (assumed to be grid-like).

Parameters:

coupling_map (list of tuple) – List of 2-qubit connections (edges).

Returns:

Qubit indices in Group A. group_b (list): Qubit indices in Group B.

Return type:

group_a (list)

execute(backend: IQMBackendBase) Dataset#

Executes the benchmark.

Parameters:

backend (IQMBackendBase) –

Return type:

Dataset