|View source on GitHub|
Extracts a minimal set of characterization requests necessary to characterize given circuits.
cirq_google.calibration.prepare_characterization_for_circuits_moments( circuits: List[cirq.Circuit], options: PhasedFSimCalibrationOptions[RequestT], *, gates_translator: Callable[[cirq.Gate], Optional[PhaseCalibratedFSimGate]] =
cirq_google.calibration.try_convert_syc_or_sqrt_iswap_to_fsim, merge_subsets: bool = True, initial: Optional[Sequence[RequestT]] = None, permit_mixed_moments: bool = False ) -> Tuple[List[CircuitWithCalibration], List[RequestT]]
This prepare method works on moments of the circuit and assumes that all the two-qubit gates to calibrate are not mixed with other gates in a moment. The method groups together moments of similar structure to minimize the number of characterizations requested.
The circuit can only be composed of single qubit operations, wait operations, measurement operations and operations supported by gates_translator.
See also prepare_characterization_for_moments that operates on a single circuit.
||Circuits list to characterize.|
||Options that are applied to each characterized gate within a moment.|
||Function that translates a gate to a supported FSimGate which will undergo characterization. Defaults to sqrt_iswap_gates_translator.|
||The characterization requests obtained by a previous scan of another circuit; i.e., the requests field of the return value of prepare_characterization_for_moments invoked on another circuit. This might be used to find a minimal set of moments to characterize across many circuits.|
||Whether to allow a mix of two-qubit gates with other irrelevant single-qubit gates.|
||The circuit and its mapping from moments to indices into the list of calibration requests (the second returned value). When list of circuits was passed on input, this will be a list of CircuitWithCalibration objects corresponding to each circuit on the input list.|
||A list of calibration requests for each characterized moment.|
|IncompatibleMomentError when circuit contains a moment with operations other than the operations matched by gates_translator, or it mixes a single qubit and two qubit gates.|