pub struct NoiseModel {
pub p1: f64,
pub p2: f64,
pub p_meas: f64,
pub p_reset: f64,
pub p_idle: f64,
}Expand description
Circuit-level Pauli noise probabilities materialized by
NoiseModel::noisy_circuit.
Fields§
§p1: f64Single-qubit depolarizing probability after each noisy 1q gate.
p2: f64Two-qubit depolarizing probability after each 2q gate.
p_meas: f64Measurement result-flip probability.
p_reset: f64Orthogonal-state preparation probability after each reset.
p_idle: f64Per-tick single-qubit depolarizing probability on idle footprint qubits.
Implementations§
Source§impl NoiseModel
impl NoiseModel
Sourcepub const fn uniform_depolarizing(probability: f64) -> Self
pub const fn uniform_depolarizing(probability: f64) -> Self
Sets every channel to probability.
Sourcepub fn requires_repeat_flattening(&self, circuit: &CoordCircuit) -> bool
pub fn requires_repeat_flattening(&self, circuit: &CoordCircuit) -> bool
Whether idle noise needs repeat expansion to account for moments that cross a repeat boundary. Annotation owners must flatten their side tables together with the circuit before applying noise in this case.
Sourcepub fn noisy_circuit(
&self,
circuit: &CoordCircuit,
) -> Result<CoordCircuit, CircuitError>
pub fn noisy_circuit( &self, circuit: &CoordCircuit, ) -> Result<CoordCircuit, CircuitError>
Clone circuit and materialize this model as explicit noise operations.
§Errors
Returns CircuitError if repeat expansion fails.
Sourcepub fn noisy_circuit_excluding(
&self,
circuit: &CoordCircuit,
ideal_qubits: &[IVec2],
) -> Result<CoordCircuit, CircuitError>
pub fn noisy_circuit_excluding( &self, circuit: &CoordCircuit, ideal_qubits: &[IVec2], ) -> Result<CoordCircuit, CircuitError>
Self::noisy_circuit while keeping ideal_qubits free of
generated or pre-existing error channels. A two-qubit channel is
removed when either member of its pair is ideal. Repeats sharing a moment
with their surroundings are flattened; final measurement ids are retained.
§Errors
Returns the circuit’s flatten error if a repeat needing expansion is
invalid, exhausts measurement ids, or exceeds the expansion allowance.
Returns CircuitError::BodyIdOutOfRange if a body index exceeds u32::MAX.
Trait Implementations§
Source§impl Clone for NoiseModel
impl Clone for NoiseModel
Source§fn clone(&self) -> NoiseModel
fn clone(&self) -> NoiseModel
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more