qibocal.protocols.two_qubit_interaction.mermin package#
Submodules#
qibocal.protocols.two_qubit_interaction.mermin.protocol module#
- class qibocal.protocols.two_qubit_interaction.mermin.protocol.MerminParameters(ntheta: int, native: Optional[bool] = False, apply_error_mitigation: Optional[bool] = False)[source]#
Bases:
Parameters
Mermin experiment input parameters.
- class qibocal.protocols.two_qubit_interaction.mermin.protocol.MerminData(thetas: list, data: dict[list[typing.Union[str, int]], numpy.ndarray[typing.Any, numpy.dtype[dtype([('theta', '<f8'), ('basis', '<U100'), ('state', '<i8'), ('frequency', '<i8')])]]] = <factory>, mitigation_matrix: dict[list[typing.Union[str, int]], numpy.ndarray[typing.Any, numpy.dtype[numpy.float64]]] = <factory>)[source]#
Bases:
Data
Mermin Data structure.
- data: dict[list[typing.Union[str, int]], numpy.ndarray[typing.Any, numpy.dtype[dtype([('theta', '<f8'), ('basis', '<U100'), ('state', '<i8'), ('frequency', '<i8')])]]]#
Raw data acquired.
- mitigation_matrix: dict[list[Union[str, int]], numpy.ndarray[Any, numpy.dtype[numpy.float64]]]#
Mitigation matrix computed using the readout_mitigation_matrix protocol.
- property targets#
- _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.
- class qibocal.protocols.two_qubit_interaction.mermin.protocol.MerminResults(mermin: dict[tuple[typing.Union[str, int], ...], numpy.ndarray[typing.Any, numpy.dtype[numpy.float64]]] = <factory>, mermin_mitigated: dict[tuple[typing.Union[str, int], ...], numpy.ndarray[typing.Any, numpy.dtype[numpy.float64]]] = <factory>)[source]#
Bases:
Results
Mermin Results class.
- _to_npz(path: Path, filename: str)#
Helper function to use np.savez while converting keys into strings.
- qibocal.protocols.two_qubit_interaction.mermin.protocol._acquisition(params: MerminParameters, platform: Platform, targets: list[list[Union[str, int]]]) MerminData [source]#
Data acquisition for Mermin protocol using pulse sequences.
- qibocal.protocols.two_qubit_interaction.mermin.protocol._fit(data: MerminData) MerminResults [source]#
Fitting for Mermin protocol.
- qibocal.protocols.two_qubit_interaction.mermin.protocol._plot(data: MerminData, fit: MerminResults, target)[source]#
Plotting function for Mermin protocol.