The rabi oscillations are essential when determining the amplitude of the signal send to the qubit. The ($\pi$)-pulses, which amplitudes is varying is a Gaussian pulses. By varying the amplitude a cosine function appears when measuring transmission coefficient (S21) and with that one can determine the optimal amplitude for qubit operations. This can also be done for 12 operations with the only difference being the 1 state being initialized.
RabiOscillationsMeasurement
The RabiOscillationsMeasurement
class facilitates the creation of schedules for Rabi oscillations.
schedule_function
The schedule_function
generates an experimental schedule for performing Rabi oscillations. The sequence involves:
Parameters:
mw_amplitudes
(dict[str, np.ndarray]
): Amplitudes of the probing ($\pi$)-pulses.repetitions
(int
): Number of times the schedule will repeat.qubit_state
(int
): The state for the qubit.Returns:
Schedule
object representing the experimental procedure.RabiQubitAnalysis
The RabiQubitAnalysis
class analyzes the results of Rabi oscillations experiments. It fits a cosine function to the qubit response for different amplitudes of the ($\pi$)-pulse, determinaning the Rabi frequencies.
analyse_qubit
The analyse_qubit
method processes the Rabi oscillations data to extract key parameters:
Steps:
Load Data:
Extract the drive amplitude and magnitude values from the dataset for analysis.
Fit Model:
Fit the cosine function to the Rabi oscillation data using the guessed parameters. The model adjusts to minimize the error.
amp180
) from the fit.Generate Fit Curve:
Evaluate the fitted model over a finer set of amplitude values for smooth plotting.