Replaces operations and moments with noisy counterparts.
Used in the notebooks
A child class must override at least one of the following three methods:
noisy_moments
noisy_moment
noisy_operation
The methods that are not overridden will be implemented in terms of the ones
that are.
Simulators told to use a noise model will use these methods in order to
dynamically rewrite the program they are simulating.
Methods
from_noise_model_like
View source
@classmethod
from_noise_model_like(
noise: 'cirq.NOISE_MODEL_LIKE'
) -> 'cirq.NoiseModel'
Transforms an object into a noise model if unambiguously possible.
Raises |
ValueError
|
If noise is a cirq.Gate that acts on more than one
qubit.
|
TypeError
|
The input is not a cirq.NOISE_MODE_LIKE .
|
is_virtual_moment
View source
is_virtual_moment(
moment: 'cirq.Moment'
) -> bool
Returns true iff the given moment is non-empty and all of its operations are virtual.
Moments for which this method returns True should not have additional
noise applied to them.
Args |
moment
|
cirq.Moment to check for non-virtual operations.
|
Returns |
True if "moment" is non-empty and all operations in "moment" are
virtual; false otherwise.
|
noisy_moment
View source
noisy_moment(
moment: 'cirq.Moment', system_qubits: Sequence['cirq.Qid']
) -> 'cirq.OP_TREE'
Adds noise to the operations from a moment.
Args |
moment
|
The moment to add noise to.
|
system_qubits
|
A list of all qubits in the system.
|
Returns |
An OP_TREE corresponding to the noisy operations for the moment.
|
noisy_moments
View source
noisy_moments(
moments: Iterable['cirq.Moment'], system_qubits: Sequence['cirq.Qid']
) -> Sequence['cirq.OP_TREE']
Adds possibly stateful noise to a series of moments.
Args |
moments
|
The moments to add noise to.
|
system_qubits
|
A list of all qubits in the system.
|
Returns |
A sequence of OP_TREEs, with the k'th tree corresponding to the
noisy operations for the k'th moment.
|
noisy_operation
View source
noisy_operation(
operation: 'cirq.Operation'
) -> 'cirq.OP_TREE'
Adds noise to an individual operation.
Args |
operation
|
The operation to make noisy.
|
Returns |
An OP_TREE corresponding to the noisy operations implementing the
noisy version of the given operation.
|