iqm.benchmarks.compressive_gst.compressive_gst.CompressiveGST#
- class iqm.benchmarks.compressive_gst.compressive_gst.CompressiveGST(backend: IQMBackendBase, configuration: GSTConfiguration)#
Bases:
BenchmarkSPAM-robust characterization of a set of quantum gates
Attributes
nameMethods
add_configuration_to_dataset(dataset)Creates an xarray.Dataset and adds the circuits and configuration metadata to it
analysis_function(run)Analysis function for compressive GST
execute(backend)The main GST execution routine
Generate random circuits from the gate set
- Parameters:
backend (IQMBackendBase) –
configuration (GSTConfiguration) –
- static analysis_function(run: BenchmarkRunResult) BenchmarkAnalysisResult#
Analysis function for compressive GST
- Parameters:
run (BenchmarkRunResult) – BenchmarkRunResult A BenchmarkRunResult instance storing the dataset
- Returns:
- BenchmarkAnalysisResult
An BenchmarkAnalysisResult instance with the updated dataset, as well as plots and observations
- Return type:
result
- generate_meas_circuits() tuple[BenchmarkCircuit, BenchmarkCircuit]#
Generate random circuits from the gate set
The random circuits are distributed among different depths ranging from L_MIN to L_MAX, both are configurable and stored in self.configuration.seq_len_list. No transpilation other than mapping to the desired qubits is performed, as the gates need to be executed axactly as described for GST to give meaningful results
- Returns:
- BenchmarkCircuit
The transpiled circuits
- untranspiled_circuits: BenchmarkCircuit
The untranspiled circuits
- circuit_gen_transp_time: float
The time it took to generate and transpile the circuits
- Return type:
transpiled_circuits
- add_configuration_to_dataset(dataset)#
Creates an xarray.Dataset and adds the circuits and configuration metadata to it
- Parameters:
self – Source class
- Returns:
xarray.Dataset to be used for further data storage
- Return type:
dataset
- execute(backend) Dataset#
The main GST execution routine
- Return type:
Dataset