Struct sampling::examples::coin_flips::CoinFlipSequence
source · pub struct CoinFlipSequence<R> { /* private fields */ }
Expand description
Implementations§
source§impl<R> CoinFlipSequence<R>where
R: Rng,
impl<R> CoinFlipSequence<R>where
R: Rng,
source§impl<R> CoinFlipSequence<R>
impl<R> CoinFlipSequence<R>
sourcepub fn head_count(&self) -> usize
pub fn head_count(&self) -> usize
Count how often Head
occurs in the Coin flip sequence
sourcepub fn update_head_count(&self, step: &CoinFlipMove, head_count: &mut usize)
pub fn update_head_count(&self, step: &CoinFlipMove, head_count: &mut usize)
- Calculate the head count, if a previouse head count of the ensemble and the markov steps leading to the current state are known
head_count
is updated- might panic if
step
was not the markov step leading from the ensemble withhead_count
to the current ensemble - if it does not panic, the result will be wrong
sourcepub fn max_heads_in_a_row(&self) -> usize
pub fn max_heads_in_a_row(&self) -> usize
Count many times Head
occured in a row
- uses maximum value, i.e., for the sequence
HHTHHHT
it will return 3
Trait Implementations§
source§impl<R: Clone> Clone for CoinFlipSequence<R>
impl<R: Clone> Clone for CoinFlipSequence<R>
source§fn clone(&self) -> CoinFlipSequence<R>
fn clone(&self) -> CoinFlipSequence<R>
Returns a copy 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 moresource§impl<R: Debug> Debug for CoinFlipSequence<R>
impl<R: Debug> Debug for CoinFlipSequence<R>
source§impl<'de, R> Deserialize<'de> for CoinFlipSequence<R>where
R: Deserialize<'de>,
impl<'de, R> Deserialize<'de> for CoinFlipSequence<R>where
R: Deserialize<'de>,
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>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<R> HasRng<R> for CoinFlipSequence<R>where
R: Rng,
impl<R> HasRng<R> for CoinFlipSequence<R>where
R: Rng,
source§impl<R> MarkovChain<CoinFlipMove, ()> for CoinFlipSequence<R>where
R: Rng,
impl<R> MarkovChain<CoinFlipMove, ()> for CoinFlipSequence<R>where
R: Rng,
source§fn m_step(&mut self) -> CoinFlipMove
fn m_step(&mut self) -> CoinFlipMove
Perform a markov step
source§fn m_steps(&mut self, count: usize, steps: &mut Vec<CoinFlipMove>)
fn m_steps(&mut self, count: usize, steps: &mut Vec<CoinFlipMove>)
Only implemented for testcases
Default implementation would suffice
source§fn m_steps_acc<Acc, AccFn>(
&mut self,
count: usize,
steps: &mut Vec<CoinFlipMove>,
acc: &mut Acc,
acc_fn: AccFn
)
fn m_steps_acc<Acc, AccFn>( &mut self, count: usize, steps: &mut Vec<CoinFlipMove>, acc: &mut Acc, acc_fn: AccFn )
Only implemented for testcases
Default implementation would suffice
source§fn undo_steps(&mut self, steps: &[CoinFlipMove], res: &mut Vec<()>)
fn undo_steps(&mut self, steps: &[CoinFlipMove], res: &mut Vec<()>)
Only implemented for testcases
Default implementation would suffice
source§fn undo_steps_quiet(&mut self, steps: &[CoinFlipMove])
fn undo_steps_quiet(&mut self, steps: &[CoinFlipMove])
Only implemented for testcases
Default implementation would suffice
source§fn steps_accepted(&mut self, _steps: &[CoinFlipMove])
fn steps_accepted(&mut self, _steps: &[CoinFlipMove])
Only implemented for testcases
Default implementation would suffice
source§fn steps_rejected(&mut self, _steps: &[CoinFlipMove])
fn steps_rejected(&mut self, _steps: &[CoinFlipMove])
Only implemented for testcases
Default implementation would suffice
source§fn undo_step(&mut self, step: &CoinFlipMove)
fn undo_step(&mut self, step: &CoinFlipMove)
undo a markov step, return result-stateif you want to undo more than one step
see
undo_steps
Read moresource§fn undo_step_quiet(&mut self, step: &CoinFlipMove)
fn undo_step_quiet(&mut self, step: &CoinFlipMove)
undo a markov, panic on invalid result statefor undoing multiple steps see
undo_steps_quiet
Read moresource§fn m_steps_quiet(&mut self, count: usize)
fn m_steps_quiet(&mut self, count: usize)
Markov steps without return Read more
source§fn m_step_acc<Acc, AccFn>(&mut self, acc: &mut Acc, acc_fn: AccFn) -> S
fn m_step_acc<Acc, AccFn>(&mut self, acc: &mut Acc, acc_fn: AccFn) -> S
Accumulating markov step Read more
Auto Trait Implementations§
impl<R> RefUnwindSafe for CoinFlipSequence<R>where
R: RefUnwindSafe,
impl<R> Send for CoinFlipSequence<R>where
R: Send,
impl<R> Sync for CoinFlipSequence<R>where
R: Sync,
impl<R> Unpin for CoinFlipSequence<R>where
R: Unpin,
impl<R> UnwindSafe for CoinFlipSequence<R>where
R: UnwindSafe,
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
§impl<S, T> Cast<T> for Swhere
T: Conv<S>,
impl<S, T> Cast<T> for Swhere
T: Conv<S>,
§impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
§fn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
§fn cast_approx(self) -> T
fn cast_approx(self) -> T
§impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
§fn cast_trunc(self) -> T
fn cast_trunc(self) -> T
Cast to integer, truncating Read more
§fn cast_nearest(self) -> T
fn cast_nearest(self) -> T
Cast to the nearest integer Read more
§fn cast_floor(self) -> T
fn cast_floor(self) -> T
Cast the floor to an integer Read more
§fn try_cast_trunc(self) -> Result<T, Error>
fn try_cast_trunc(self) -> Result<T, Error>
Try converting to integer with truncation Read more
§fn try_cast_nearest(self) -> Result<T, Error>
fn try_cast_nearest(self) -> Result<T, Error>
Try converting to the nearest integer Read more
§fn try_cast_floor(self) -> Result<T, Error>
fn try_cast_floor(self) -> Result<T, Error>
Try converting the floor to an integer Read more
§fn try_cast_ceil(self) -> Result<T, Error>
fn try_cast_ceil(self) -> Result<T, Error>
Try convert the ceiling to an integer Read more