pub struct QuantumContainer { /* private fields */ }Expand description
Quantum-classical hybrid container
Implementations§
Source§impl QuantumContainer
impl QuantumContainer
Sourcepub fn set_superposition_state(
&mut self,
state_index: usize,
amplitude: QuantumAmplitude,
)
pub fn set_superposition_state( &mut self, state_index: usize, amplitude: QuantumAmplitude, )
Set a superposition state
Sourcepub fn get_probability(&self, state_index: usize) -> f64
pub fn get_probability(&self, state_index: usize) -> f64
Get probability of a specific state
Sourcepub fn store_classical(&mut self, key: String, value: f64)
pub fn store_classical(&mut self, key: String, value: f64)
Store classical data
Sourcepub fn get_classical(&self, key: &str) -> Option<f64>
pub fn get_classical(&self, key: &str) -> Option<f64>
Retrieve classical data
Sourcepub fn hybrid_operation(&mut self, operation: HybridOperation) -> Result<f64>
pub fn hybrid_operation(&mut self, operation: HybridOperation) -> Result<f64>
Perform quantum-classical hybrid operation
Sourcepub fn apply_two_qubit_gate(
&mut self,
control: usize,
target: usize,
gate: TwoQubitGate,
) -> Result<()>
pub fn apply_two_qubit_gate( &mut self, control: usize, target: usize, gate: TwoQubitGate, ) -> Result<()>
Apply two-qubit gate
Sourcepub fn quantum_state(&self) -> &QuantumState
pub fn quantum_state(&self) -> &QuantumState
Get quantum state reference
Sourcepub fn quantum_state_mut(&mut self) -> &mut QuantumState
pub fn quantum_state_mut(&mut self) -> &mut QuantumState
Get quantum state mutably
Sourcepub fn classical_memory(&self) -> &HashMap<String, f64>
pub fn classical_memory(&self) -> &HashMap<String, f64>
Get classical memory reference
Sourcepub fn create_superposition_from_classical(
&mut self,
probabilities: &[f64],
) -> Result<()>
pub fn create_superposition_from_classical( &mut self, probabilities: &[f64], ) -> Result<()>
Create quantum superposition from classical probability distribution
Auto Trait Implementations§
impl Freeze for QuantumContainer
impl RefUnwindSafe for QuantumContainer
impl Send for QuantumContainer
impl Sync for QuantumContainer
impl Unpin for QuantumContainer
impl UnwindSafe for QuantumContainer
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> 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.