Struct roqoqo::operations::PragmaDephasing
source · pub struct PragmaDephasing {
qubit: usize,
gate_time: CalculatorFloat,
rate: CalculatorFloat,
}
Expand description
The dephasing PRAGMA noise Operation.
This PRAGMA Operation applies a pure dephasing error.
Fields§
§qubit: usize
The qubit on which to apply the dephasing.
gate_time: CalculatorFloat
The time (in seconds) the gate takes to be applied to the qubit on the (simulated) hardware
rate: CalculatorFloat
The error rate of the dephasing (in 1/second).
Implementations§
source§impl PragmaDephasing
impl PragmaDephasing
sourcepub fn gate_time(&self) -> &CalculatorFloat
pub fn gate_time(&self) -> &CalculatorFloat
Returns the value of the field gate_time
.
sourcepub fn rate(&self) -> &CalculatorFloat
pub fn rate(&self) -> &CalculatorFloat
Returns the value of the field rate
.
sourcepub fn new(
qubit: usize,
gate_time: CalculatorFloat,
rate: CalculatorFloat
) -> Self
pub fn new( qubit: usize, gate_time: CalculatorFloat, rate: CalculatorFloat ) -> Self
Creates a new instance of PragmaDephasing
.
Trait Implementations§
source§impl Clone for PragmaDephasing
impl Clone for PragmaDephasing
source§fn clone(&self) -> PragmaDephasing
fn clone(&self) -> PragmaDephasing
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for PragmaDephasing
impl Debug for PragmaDephasing
source§impl<'de> Deserialize<'de> for PragmaDephasing
impl<'de> Deserialize<'de> for PragmaDephasing
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl From<PragmaDephasing> for Operation
impl From<PragmaDephasing> for Operation
Implements the From trait from this Operation.
source§fn from(v: PragmaDephasing) -> Self
fn from(v: PragmaDephasing) -> Self
Performs the conversion.
source§impl From<PragmaDephasing> for PragmaNoiseOperation
impl From<PragmaDephasing> for PragmaNoiseOperation
Implements the From trait from this Operation.
source§fn from(v: PragmaDephasing) -> Self
fn from(v: PragmaDephasing) -> Self
Performs the conversion.
source§impl From<PragmaDephasing> for PragmaNoiseProbaOperation
impl From<PragmaDephasing> for PragmaNoiseProbaOperation
Implements the From trait from this Operation.
source§fn from(v: PragmaDephasing) -> Self
fn from(v: PragmaDephasing) -> Self
Performs the conversion.
source§impl From<PragmaDephasing> for PragmaOperation
impl From<PragmaDephasing> for PragmaOperation
Implements the From trait from this Operation.
source§fn from(v: PragmaDephasing) -> Self
fn from(v: PragmaDephasing) -> Self
Performs the conversion.
source§impl From<PragmaDephasing> for SingleQubitOperation
impl From<PragmaDephasing> for SingleQubitOperation
Implements the From trait from this Operation.
source§fn from(v: PragmaDephasing) -> Self
fn from(v: PragmaDephasing) -> Self
Performs the conversion.
source§impl InvolveQubits for PragmaDephasing
impl InvolveQubits for PragmaDephasing
Implements InvolveQubits trait for the qubits involved in this Operation.
source§fn involved_qubits(&self) -> InvolvedQubits
fn involved_qubits(&self) -> InvolvedQubits
Returns a list of all involved qubits.
source§fn involved_classical(&self) -> InvolvedClassical
fn involved_classical(&self) -> InvolvedClassical
source§impl Operate for PragmaDephasing
impl Operate for PragmaDephasing
Implements the universal basic trait Operate for this Operation.
source§impl OperatePragmaNoise for PragmaDephasing
impl OperatePragmaNoise for PragmaDephasing
OperatePragmaNoise trait creating necessary functions for a PRAGMA noise Operation.
source§fn superoperator(&self) -> Result<Array2<f64>, RoqoqoError>
fn superoperator(&self) -> Result<Array2<f64>, RoqoqoError>
Returns the superoperator matrix of the operation.
source§fn powercf(&self, power: CalculatorFloat) -> Self
fn powercf(&self, power: CalculatorFloat) -> Self
Returns the gate to the power of power
.
source§impl OperatePragmaNoiseProba for PragmaDephasing
impl OperatePragmaNoiseProba for PragmaDephasing
OperatePragmaNoiseProba trait creating necessary functions for a PRAGMA noise Operation.
source§fn probability(&self) -> CalculatorFloat
fn probability(&self) -> CalculatorFloat
Returns the probability of the noise gate affecting the qubit, based on its gate_time
and rate
.
source§impl OperateSingleQubit for PragmaDephasing
impl OperateSingleQubit for PragmaDephasing
Implements OperateSingleQubit trait for this Operation acting on exactly one qubit.
source§impl PartialEq for PragmaDephasing
impl PartialEq for PragmaDephasing
source§fn eq(&self, other: &PragmaDephasing) -> bool
fn eq(&self, other: &PragmaDephasing) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl Serialize for PragmaDephasing
impl Serialize for PragmaDephasing
source§impl Substitute for PragmaDephasing
impl Substitute for PragmaDephasing
Implements Substitute trait allowing to replace symbolic parameters and to perform qubit mappings.
source§fn substitute_parameters(
&self,
calculator: &Calculator
) -> Result<Self, RoqoqoError>
fn substitute_parameters( &self, calculator: &Calculator ) -> Result<Self, RoqoqoError>
Substitutes symbolic parameters in clone of the operation.
source§fn remap_qubits(
&self,
mapping: &HashMap<usize, usize>
) -> Result<Self, RoqoqoError>
fn remap_qubits( &self, mapping: &HashMap<usize, usize> ) -> Result<Self, RoqoqoError>
Remaps the qubits in clone of the operation.
source§impl SupportedVersion for PragmaDephasing
impl SupportedVersion for PragmaDephasing
source§impl TryFrom<Operation> for PragmaDephasing
impl TryFrom<Operation> for PragmaDephasing
Implements the core::convert::TryFrom trait into this Operation.
source§impl TryFrom<PragmaNoiseOperation> for PragmaDephasing
impl TryFrom<PragmaNoiseOperation> for PragmaDephasing
Implements the core::convert::TryFrom trait into this Operation.
source§impl TryFrom<PragmaNoiseProbaOperation> for PragmaDephasing
impl TryFrom<PragmaNoiseProbaOperation> for PragmaDephasing
Implements the core::convert::TryFrom trait into this Operation.
source§impl TryFrom<PragmaOperation> for PragmaDephasing
impl TryFrom<PragmaOperation> for PragmaDephasing
Implements the core::convert::TryFrom trait into this Operation.
source§impl TryFrom<SingleQubitOperation> for PragmaDephasing
impl TryFrom<SingleQubitOperation> for PragmaDephasing
Implements the core::convert::TryFrom trait into this Operation.
impl OperatePragma for PragmaDephasing
impl StructuralPartialEq for PragmaDephasing
Auto Trait Implementations§
impl Freeze for PragmaDephasing
impl RefUnwindSafe for PragmaDephasing
impl Send for PragmaDephasing
impl Sync for PragmaDephasing
impl Unpin for PragmaDephasing
impl UnwindSafe for PragmaDephasing
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
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>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
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
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.