pub struct MultiWalkerQuantumWalk { /* private fields */ }
Expand description
Multi-walker quantum walk for studying entanglement and correlations
Implementations§
Source§impl MultiWalkerQuantumWalk
impl MultiWalkerQuantumWalk
Sourcepub fn initialize_positions(
&mut self,
positions: &[usize],
) -> QuantRS2Result<()>
pub fn initialize_positions( &mut self, positions: &[usize], ) -> QuantRS2Result<()>
Initialize walkers at specific positions
Sourcepub fn initialize_entangled_bell_state(
&mut self,
pos1: usize,
pos2: usize,
) -> QuantRS2Result<()>
pub fn initialize_entangled_bell_state( &mut self, pos1: usize, pos2: usize, ) -> QuantRS2Result<()>
Initialize in entangled superposition
Sourcepub fn step_independent(&mut self)
pub fn step_independent(&mut self)
Perform one step (simplified version - each walker evolves independently)
Sourcepub fn marginal_probabilities(&self, walker_idx: usize) -> Vec<f64>
pub fn marginal_probabilities(&self, walker_idx: usize) -> Vec<f64>
Get marginal probability distribution for a specific walker
Sourcepub fn entanglement_entropy(&self) -> f64
pub fn entanglement_entropy(&self) -> f64
Calculate entanglement entropy between walkers
Auto Trait Implementations§
impl Freeze for MultiWalkerQuantumWalk
impl RefUnwindSafe for MultiWalkerQuantumWalk
impl Send for MultiWalkerQuantumWalk
impl Sync for MultiWalkerQuantumWalk
impl Unpin for MultiWalkerQuantumWalk
impl UnwindSafe for MultiWalkerQuantumWalk
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> 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.