|View source on GitHub|
Compensates circuit operations against errors in zeta, chi and gamma angles.
cirq_google.calibration.make_zeta_chi_gamma_compensation_for_operations( circuit: cirq.Circuit, characterizations: List[
cirq_google.calibration.PhasedFSimCalibrationResult], gates_translator: Callable[[cirq.Gate], Optional[PhaseCalibratedFSimGate]] =
cirq_google.calibration.phased_fsim.try_convert_gate_to_fsim, permit_mixed_moments: bool = False ) -> cirq.Circuit
This method creates a new circuit with a single-qubit Z gates added in a such way so that zeta, chi and gamma angles discovered by characterizations are cancelled-out and set to 0.
Contrary to make_zeta_chi_gamma_compensation_for_moments this method does not match characterizations to the moment structure of the circuits and thus is less accurate because some errors caused by cross-talks are not mitigated.
The major advantage of this method over make_zeta_chi_gamma_compensation_for_moments is that it can work with arbitrary set of characterizations that cover all the interactions of the circuit (up to assumptions of merge_matching_results method). In particular, for grid-like devices the number of characterizations is bounded by four, where in the case of make_zeta_chi_gamma_compensation_for_moments the number of characterizations is bounded by number of moments in a circuit.
This function preserves a moment structure of the circuit. All single qubit gates appear on new moments in the final circuit.
|Calibrated circuit with a single-qubit Z gates added which compensates for the true gates imperfections.|