Skip to content

analysis

tergite_autocalibration.lib.nodes.readout.punchout.analysis

Classes:

Name Description
PunchoutNodeAnalysis

This class implements the punchout node analysis, which is used to

PunchoutQubitAnalysis

This class implements the punchout qubit analysis, which is used to

PunchoutNodeAnalysis

PunchoutNodeAnalysis(name, redis_fields)

Bases: BaseAllQubitsAnalysis

This class implements the punchout node analysis, which is used to measure the readout amplitude.

Methods:

Name Description
analyze_node

Analyze the node and save the results to redis.

open_dataset

Open the dataset for the analysis.

analyze_node

analyze_node(data_path: Path, index: int = 0) -> QOI

Analyze the node and save the results to redis. Args: data_path: Path to the dataset index: Index of the dataset to be analyzed

Returns:

Name Type Description
analysis_results QOI

Dictionary with the analysis results for each qubit

open_dataset

open_dataset(index: int = 0) -> Dataset

Open the dataset for the analysis.

Parameters:

Name Type Description Default
index int

By default 0 for most of the measurements, can be set to load multiple datasets.

0

Returns:

Type Description
Dataset

xarray.Dataset with measurement results

PunchoutQubitAnalysis

PunchoutQubitAnalysis(name, redis_fields)

Bases: BaseQubitAnalysis

This class implements the punchout qubit analysis, which is used to measure the readout amplitude.

Methods:

Name Description
analyse_qubit

This method performs the analysis of the qubit data. It extracts the

plot

Plot the fitted values from the analysis

plot_spectroscopies

This method creates a figure with subplots for each resonator

plotter

This method plots the results of the analysis. It creates a 2D

process_qubit

Setup the qubit data and analyze it.

rotate_to_probability_axis

Rotates the S21 IQ points to the real - normalized axis

analyse_qubit

analyse_qubit()

This method performs the analysis of the qubit data. It extracts the readout amplitude and frequency from the dataset and performs a resonator spectroscopy analysis for each amplitude. It then selects the best amplitude based on the detected resonator frequency.

plot

plot(primary_axis)

Plot the fitted values from the analysis Args: primary_axis: The axis object from matplotlib to be plotted Returns: None, will just plot the fitted values

plot_spectroscopies

plot_spectroscopies(data_path)

This method creates a figure with subplots for each resonator spectroscopy analysis. It highlights the best amplitude with a red rectangle around the corresponding subplot.

plotter

plotter(ax: Axes)

This method plots the results of the analysis. It creates a 2D scatter plot of the detected resonator frequencies against the readout pulse amplitudes. It also highlights the best amplitude with a red cross and adds a colorbar indicating the normalized |S21| values.

process_qubit

process_qubit(dataset, qubit_element) -> QOI

Setup the qubit data and analyze it. Args: dataset: xarray dataset with the qubit data qubit_element: name of the qubit element Returns: QOI: Quantity of interest as QOI wrapped object

rotate_to_probability_axis

rotate_to_probability_axis(complex_measurement_data)

Rotates the S21 IQ points to the real - normalized axis that describes the |0> - |1> axis. !!! It Assumes that complex_measurement_data[-2] corresponds to the |0> and complex_measurement_data[-1] corresponds to the |1>