Changes all measurements to a dephase operation.
cirq.dephase_measurements(
circuit: 'cirq.AbstractCircuit',
*,
context: Optional['cirq.TransformerContext'] = transformer_api.TransformerContext(deep=True)
) -> 'cirq.Circuit'
This transformer is useful when using a density matrix simulator, when
wishing to calculate the final density matrix of a circuit and not simulate
the measurements themselves.
Args |
circuit
|
The circuit to transform. It will not be modified.
|
context
|
cirq.TransformerContext storing common configurable options
for transformers. The default has deep=True to ensure
measurements at all levels are dephased.
|
Returns |
A copy of the circuit, with dephase operations in place of all
measurements.
|
Raises |
ValueError
|
If the circuit contains classical controls. In this case,
it is required to change these to quantum controls via
cirq.defer_measurements first. Since deferral adds ancilla qubits
to the circuit, this is not done automatically, to prevent
surprises.
|