pub struct NoiseModel { /* private fields */ }Expand description
Composite noise model
Manages multiple noise channels and applies them to quantum circuits.
Implementations§
Source§impl NoiseModel
impl NoiseModel
Sourcepub fn add_channel(&mut self, channel: Arc<dyn NoiseChannel>)
pub fn add_channel(&mut self, channel: Arc<dyn NoiseChannel>)
Add a global noise channel applied to all gates
Sourcepub fn add_gate_noise(
&mut self,
gate_name: &str,
channel: Arc<dyn NoiseChannel>,
)
pub fn add_gate_noise( &mut self, gate_name: &str, channel: Arc<dyn NoiseChannel>, )
Add a gate-specific noise channel
Sourcepub fn set_measurement_noise(&mut self, channel: Arc<dyn NoiseChannel>)
pub fn set_measurement_noise(&mut self, channel: Arc<dyn NoiseChannel>)
Set measurement noise
Sourcepub fn set_idle_noise(&mut self, channel: Arc<dyn NoiseChannel>)
pub fn set_idle_noise(&mut self, channel: Arc<dyn NoiseChannel>)
Set idle noise
Sourcepub fn apply_single_qubit(
&self,
state: &Array1<Complex64>,
_qubit: usize,
) -> NoiseResult<Array1<Complex64>>
pub fn apply_single_qubit( &self, state: &Array1<Complex64>, _qubit: usize, ) -> NoiseResult<Array1<Complex64>>
Apply noise to a single-qubit state
Sourcepub fn apply_gate_noise(
&self,
state: &Array1<Complex64>,
gate_name: &str,
_qubit: usize,
) -> NoiseResult<Array1<Complex64>>
pub fn apply_gate_noise( &self, state: &Array1<Complex64>, gate_name: &str, _qubit: usize, ) -> NoiseResult<Array1<Complex64>>
Apply gate-specific noise
Sourcepub fn num_global_channels(&self) -> usize
pub fn num_global_channels(&self) -> usize
Get the number of global noise channels
Sourcepub fn has_measurement_noise(&self) -> bool
pub fn has_measurement_noise(&self) -> bool
Check if measurement noise is set
Trait Implementations§
Source§impl Clone for NoiseModel
impl Clone for NoiseModel
Source§fn clone(&self) -> NoiseModel
fn clone(&self) -> NoiseModel
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for NoiseModel
impl !RefUnwindSafe for NoiseModel
impl Send for NoiseModel
impl Sync for NoiseModel
impl Unpin for NoiseModel
impl !UnwindSafe for NoiseModel
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.