surface_sim.circuit_blocks.rot_surface_code_xzzx.qec_round_pipelined#

qec_round_pipelined(model, layout, detectors, anc_reset=True, anc_detectors=None)[source]#

Returns stim circuit corresponding to a QEC round of the given model.

Parameters:
model

Noise model for the gates.

layout

Code layout.

detectors

Detector object to use for their definition.

anc_reset

If True, ancillas are reset at the beginning of the QEC round. By default True.

anc_detectors

List of ancilla qubits for which to define the detectors. If None, adds all detectors. By default None.

Notes

This implementation follows:

https://doi.org/10.1103/PhysRevApplied.8.034021

It activates all the ancillas in detectors to always build the detectors. As this function should not be used when building encoded circuits with the iterating functions, it does not matter if the detectors are activated or not.