|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: Circuit, characterizations: List[
cirq_google.calibration.PhasedFSimCalibrationResult], gates_translator: Callable[[Gate], Optional[PhaseCalibratedFSimGate]] = cirq_google.calibration.try_convert_sqrt_iswap_to_fsim, permit_mixed_moments: bool = False ) -> 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.
||Circuit to calibrate.|
||List of characterization results (likely returned from run_calibrations). All the characterizations must be compatible in sense of merge_matching_results, they will be merged together.|
||Function that translates a gate to a supported FSimGate which will undergo characterization. Defaults to sqrt_iswap_gates_translator.|
||Whether to allow mixing single-qubit and two-qubit gates in a single moment.|
|Calibrated circuit with a single-qubit Z gates added which compensates for the true gates imperfections.|