Struct net_ensembles::sampling::examples::coin_flips::CoinFlipSequence
source · [−]pub struct CoinFlipSequence<R> { /* private fields */ }
Expand description
Implementations
sourceimpl<R> CoinFlipSequence<R>where
R: Rng,
impl<R> CoinFlipSequence<R>where
R: Rng,
sourcepub fn new(n: usize, rng: R) -> CoinFlipSequence<R>
pub fn new(n: usize, rng: R) -> CoinFlipSequence<R>
Create new coin flip sequence
- length
n
- use
rng
as random number generator
sourceimpl<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
sourceimpl<R> Clone for CoinFlipSequence<R>where
R: Clone,
impl<R> Clone for CoinFlipSequence<R>where
R: Clone,
sourcefn clone(&self) -> CoinFlipSequence<R>
fn clone(&self) -> CoinFlipSequence<R>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl<R> Debug for CoinFlipSequence<R>where
R: Debug,
impl<R> Debug for CoinFlipSequence<R>where
R: Debug,
sourceimpl<'de, R> Deserialize<'de> for CoinFlipSequence<R>where
R: Deserialize<'de>,
impl<'de, R> Deserialize<'de> for CoinFlipSequence<R>where
R: Deserialize<'de>,
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<CoinFlipSequence<R>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<CoinFlipSequence<R>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl<R> HasRng<R> for CoinFlipSequence<R>where
R: Rng,
impl<R> HasRng<R> for CoinFlipSequence<R>where
R: Rng,
sourceimpl<R> MarkovChain<CoinFlipMove, ()> for CoinFlipSequence<R>where
R: Rng,
impl<R> MarkovChain<CoinFlipMove, ()> for CoinFlipSequence<R>where
R: Rng,
sourcefn m_step(&mut self) -> CoinFlipMove
fn m_step(&mut self) -> CoinFlipMove
Perform a markov step
sourcefn m_steps(&mut self, count: usize, steps: &mut Vec<CoinFlipMove, Global>)
fn m_steps(&mut self, count: usize, steps: &mut Vec<CoinFlipMove, Global>)
Only implemented for testcases
Default implementation would suffice
sourcefn m_steps_acc<Acc, AccFn>(
&mut self,
count: usize,
steps: &mut Vec<CoinFlipMove, Global>,
acc: &mut Acc,
acc_fn: AccFn
)where
AccFn: FnMut(&CoinFlipSequence<R>, &CoinFlipMove, &mut Acc),
fn m_steps_acc<Acc, AccFn>(
&mut self,
count: usize,
steps: &mut Vec<CoinFlipMove, Global>,
acc: &mut Acc,
acc_fn: AccFn
)where
AccFn: FnMut(&CoinFlipSequence<R>, &CoinFlipMove, &mut Acc),
Only implemented for testcases
Default implementation would suffice
sourcefn undo_steps(&mut self, steps: &[CoinFlipMove], res: &mut Vec<(), Global>)
fn undo_steps(&mut self, steps: &[CoinFlipMove], res: &mut Vec<(), Global>)
Only implemented for testcases
Default implementation would suffice
sourcefn undo_steps_quiet(&mut self, steps: &[CoinFlipMove])
fn undo_steps_quiet(&mut self, steps: &[CoinFlipMove])
Only implemented for testcases
Default implementation would suffice
sourcefn steps_accepted(&mut self, _steps: &[CoinFlipMove])
fn steps_accepted(&mut self, _steps: &[CoinFlipMove])
Only implemented for testcases
Default implementation would suffice
sourcefn steps_rejected(&mut self, _steps: &[CoinFlipMove])
fn steps_rejected(&mut self, _steps: &[CoinFlipMove])
Only implemented for testcases
Default implementation would suffice
sourcefn undo_step(&mut self, step: &CoinFlipMove)
fn undo_step(&mut self, step: &CoinFlipMove)
undo_steps
sourcefn undo_step_quiet(&mut self, step: &CoinFlipMove)
fn undo_step_quiet(&mut self, step: &CoinFlipMove)
undo_steps_quiet
sourcefn m_steps_quiet(&mut self, count: usize)
fn m_steps_quiet(&mut self, count: usize)
Markov steps without return Read more
sourceimpl<R> Serialize for CoinFlipSequence<R>where
R: Serialize,
impl<R> Serialize for CoinFlipSequence<R>where
R: Serialize,
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. 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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
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