pub enum IndependentAlgorithm {}
Trait Implementations§
source§impl<'p, O: Scenario<M, G>, R: Reporter, P: LocalPartition<'p, R>, M: MathsCore, G: PrimeableRng<M>> Algorithm<'p, M, G, O, R, P> for IndependentAlgorithm
impl<'p, O: Scenario<M, G>, R: Reporter, P: LocalPartition<'p, R>, M: MathsCore, G: PrimeableRng<M>> Algorithm<'p, M, G, O, R, P> for IndependentAlgorithm
source§fn resume_and_simulate<I: Iterator<Item = u64>, L: ExactSizeIterator<Item = Lineage>>(
args: Self::Arguments,
rng: G,
scenario: ScenarioCogs<M, G, O>,
pre_sampler: OriginPreSampler<M, I>,
lineages: L,
resume_after: Option<NonNegativeF64>,
pause_before: Option<NonNegativeF64>,
local_partition: &mut P
) -> Result<SimulationOutcome<M, G>, ResumeError<Self::Error>>
fn resume_and_simulate<I: Iterator<Item = u64>, L: ExactSizeIterator<Item = Lineage>>( args: Self::Arguments, rng: G, scenario: ScenarioCogs<M, G, O>, pre_sampler: OriginPreSampler<M, I>, lineages: L, resume_after: Option<NonNegativeF64>, pause_before: Option<NonNegativeF64>, local_partition: &mut P ) -> Result<SimulationOutcome<M, G>, ResumeError<Self::Error>>
§Errors
Returns a ContinueError::Sample
if initialising the resuming
simulation failed
source§fn fixup_for_restart<I: Iterator<Item = u64>, L: ExactSizeIterator<Item = Lineage>>(
args: Self::Arguments,
rng: G,
scenario: ScenarioCogs<M, G, O>,
pre_sampler: OriginPreSampler<M, I>,
lineages: L,
restart_at: PositiveF64,
fixup_strategy: RestartFixUpStrategy,
local_partition: &mut P
) -> Result<SimulationOutcome<M, G>, ResumeError<Self::Error>>
fn fixup_for_restart<I: Iterator<Item = u64>, L: ExactSizeIterator<Item = Lineage>>( args: Self::Arguments, rng: G, scenario: ScenarioCogs<M, G, O>, pre_sampler: OriginPreSampler<M, I>, lineages: L, restart_at: PositiveF64, fixup_strategy: RestartFixUpStrategy, local_partition: &mut P ) -> Result<SimulationOutcome<M, G>, ResumeError<Self::Error>>
§Errors
Returns a ContinueError<Self::Error>
if fixing up the restarting
simulation (incl. running the algorithm) failed
type LineageStore = IndependentLineageStore<M, <O as Scenario<M, G>>::Habitat>
fn get_logical_partition( args: &Self::Arguments, local_partition: &P ) -> Partition
source§impl AlgorithmDefaults for IndependentAlgorithm
impl AlgorithmDefaults for IndependentAlgorithm
source§impl<M: MathsCore, G: PrimeableRng<M>, O: Scenario<M, G>, R: Reporter> AlgorithmDispatch<M, G, O, R> for IndependentAlgorithm
impl<M: MathsCore, G: PrimeableRng<M>, O: Scenario<M, G>, R: Reporter> AlgorithmDispatch<M, G, O, R> for IndependentAlgorithm
type Algorithm<'p, P: LocalPartition<'p, R>> = IndependentAlgorithm
fn get_logical_partition_size<P: Partitioning>( args: &Self::Arguments, partitioning: &P ) -> PartitionSize
Auto Trait Implementations§
impl Freeze for IndependentAlgorithm
impl RefUnwindSafe for IndependentAlgorithm
impl Send for IndependentAlgorithm
impl Sync for IndependentAlgorithm
impl Unpin for IndependentAlgorithm
impl UnwindSafe for IndependentAlgorithm
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<T> ExtractDiscriminant for T
impl<T> ExtractDiscriminant for T
§type Discriminant = <T as ExtractDiscriminantSpec<<T as DiscriminantKind>::Discriminant>>::Ty
type Discriminant = <T as ExtractDiscriminantSpec<<T as DiscriminantKind>::Discriminant>>::Ty
The type of the discriminant, which must satisfy the trait bounds
required by
core::mem::Discriminant
. Read moresource§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 more