qibocal.protocols.ramsey package#
Submodules#
qibocal.protocols.ramsey.ramsey module#
- qibocal.protocols.ramsey.ramsey.ramsey = Routine(acquisition=<function _acquisition>, fit=<function _fit>, report=<function _plot>, update=<function _update>, two_qubit_gates=False)#
Ramsey Routine object.
- qibocal.protocols.ramsey.ramsey.RamseyType = dtype([('wait', '<f8'), ('prob', '<f8'), ('errors', '<f8')])#
Custom dtype for coherence routines.
qibocal.protocols.ramsey.ramsey_signal module#
- qibocal.protocols.ramsey.ramsey_signal.ramsey_signal = Routine(acquisition=<function _acquisition>, fit=<function _fit>, report=<function _plot>, update=<function _update>, two_qubit_gates=False)#
Ramsey Routine object.
- class qibocal.protocols.ramsey.ramsey_signal.RamseySignalParameters(delay_between_pulses_start: int, delay_between_pulses_end: int, delay_between_pulses_step: int, detuning: Optional[int] = None, unrolling: bool = False)[source]#
Bases:
Parameters
Ramsey runcard inputs.
- detuning: Optional[int] = None#
Frequency detuning [Hz] (optional). If 0 standard Ramsey experiment is performed.
- class qibocal.protocols.ramsey.ramsey_signal.RamseySignalData(detuning: ~typing.Optional[int] = None, qubit_freqs: dict[typing.Union[int, str], float] = <factory>, data: dict[typing.Union[int, str], numpy.ndarray[typing.Any, numpy.dtype[dtype([('wait', '<f8'), ('signal', '<f8')])]]] = <factory>)[source]#
Bases:
Data
Ramsey acquisition outputs.
- _to_npz(path: Path, filename: str)#
Helper function to use np.savez while converting keys into strings.
- property pairs#
Access qubit pairs ordered alphanumerically from data structure.
- property qubits#
Access qubits from data structure.
- register_qubit(dtype, data_keys, data_dict)#
Store output for single qubit.
- data: dict[typing.Union[int, str], numpy.ndarray[typing.Any, numpy.dtype[dtype([('wait', '<f8'), ('signal', '<f8')])]]]#
Raw data acquired.
- property waits#
Return a list with the waiting times without repetitions.
- qibocal.protocols.ramsey.ramsey_signal._update(results: RamseySignalResults, platform: CalibrationPlatform, target: Union[int, str])[source]#
- class qibocal.protocols.ramsey.ramsey_signal.RamseySignalResults(detuning: float, frequency: dict[Union[int, str], Union[float, list[float]]], t2: dict[Union[int, str], Union[float, list[float]]], delta_phys: dict[Union[int, str], Union[float, list[float]]], delta_fitting: dict[Union[int, str], Union[float, list[float]]], fitted_parameters: dict[Union[int, str], list[float]])[source]#
Bases:
Results
Ramsey outputs.
- delta_phys: dict[Union[int, str], Union[float, list[float]]]#
Drive frequency [Hz] correction for each qubit.
- delta_fitting: dict[Union[int, str], Union[float, list[float]]]#
Raw drive frequency [Hz] correction for each qubit. including the detuning.
qibocal.protocols.ramsey.ramsey_zz module#
- qibocal.protocols.ramsey.ramsey_zz.ramsey_zz = Routine(acquisition=<function _acquisition>, fit=<function _fit>, report=<function _plot>, update=<function _update>, two_qubit_gates=False)#
Ramsey Routine object.
qibocal.protocols.ramsey.utils module#
- qibocal.protocols.ramsey.utils.POPT_EXCEPTION = [0, 0, 0, 0, 1]#
Fit parameters output to handle exceptions
- qibocal.protocols.ramsey.utils.PERR_EXCEPTION = [1, 1, 1, 1, 1]#
Fit errors to handle exceptions; their choice has no physical meaning and is meant to avoid breaking the code.
- qibocal.protocols.ramsey.utils.THRESHOLD = 0.5#
Threshold parameters for find_peaks to guess frequency for sinusoidal fit.
- qibocal.protocols.ramsey.utils.ramsey_sequence(platform: Platform, targets: list[Union[int, str]], wait: int = 0, target_qubit: Optional[Union[int, str]] = None)[source]#
Pulse sequence used in Ramsey (detuned) experiments.
The pulse sequence is the following:
RX90 – wait – RX90 – MZ
- qibocal.protocols.ramsey.utils.ramsey_fit(x, offset, amplitude, delta, phase, decay)[source]#
Dumped sinusoidal fit.