pub enum GillespieAlgorithm {}
Trait Implementations§
source§impl<'p, O: Scenario<M, G, TurnoverRate = UniformTurnoverRate>, R: Reporter, P: LocalPartition<'p, R>, M: MathsCore, G: SplittableRng<M>> Algorithm<'p, M, G, O, R, P> for GillespieAlgorithmwhere
O::LineageStore<ClassicalLineageStore<M, O::Habitat>>: LocallyCoherentLineageStore<M, O::Habitat>,
impl<'p, O: Scenario<M, G, TurnoverRate = UniformTurnoverRate>, R: Reporter, P: LocalPartition<'p, R>, M: MathsCore, G: SplittableRng<M>> Algorithm<'p, M, G, O, R, P> for GillespieAlgorithmwhere
O::LineageStore<ClassicalLineageStore<M, O::Habitat>>: LocallyCoherentLineageStore<M, O::Habitat>,
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
source§fn initialise_and_simulate<I: Iterator<Item = u64>>(
args: Self::Arguments,
rng: G,
scenario: ScenarioCogs<M, G, O>,
pre_sampler: OriginPreSampler<M, I>,
pause_before: Option<NonNegativeF64>,
local_partition: &mut P
) -> Result<SimulationOutcome<M, G>, Self::Error>
fn initialise_and_simulate<I: Iterator<Item = u64>>( args: Self::Arguments, rng: G, scenario: ScenarioCogs<M, G, O>, pre_sampler: OriginPreSampler<M, I>, pause_before: Option<NonNegativeF64>, local_partition: &mut P ) -> Result<SimulationOutcome<M, G>, Self::Error>
Errors Read more
type LineageStore: LineageStore<M, <O as Scenario<M, G>>::Habitat>
fn get_logical_partition( args: &Self::Arguments, local_partition: &P ) -> Partition
source§impl<'p, O: Scenario<M, G>, R: Reporter, P: LocalPartition<'p, R>, M: MathsCore, G: SplittableRng<M>> Algorithm<'p, M, G, O, R, P> for GillespieAlgorithmwhere
O::LineageStore<ClassicalLineageStore<M, O::Habitat>>: LocallyCoherentLineageStore<M, O::Habitat>,
impl<'p, O: Scenario<M, G>, R: Reporter, P: LocalPartition<'p, R>, M: MathsCore, G: SplittableRng<M>> Algorithm<'p, M, G, O, R, P> for GillespieAlgorithmwhere
O::LineageStore<ClassicalLineageStore<M, O::Habitat>>: LocallyCoherentLineageStore<M, O::Habitat>,
source§default 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>>
default 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§default 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>>
default 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 = <O as Scenario<M, G>>::LineageStore<ClassicalLineageStore<M, <O as Scenario<M, G>>::Habitat>>
default fn get_logical_partition( args: &Self::Arguments, local_partition: &P ) -> Partition
source§impl AlgorithmDefaults for GillespieAlgorithm
impl AlgorithmDefaults for GillespieAlgorithm
source§impl<M: MathsCore, G: SplittableRng<M>, O: Scenario<M, G>, R: Reporter> AlgorithmDispatch<M, G, O, R> for GillespieAlgorithmwhere
O::LineageStore<ClassicalLineageStore<M, O::Habitat>>: LocallyCoherentLineageStore<M, O::Habitat>,
impl<M: MathsCore, G: SplittableRng<M>, O: Scenario<M, G>, R: Reporter> AlgorithmDispatch<M, G, O, R> for GillespieAlgorithmwhere
O::LineageStore<ClassicalLineageStore<M, O::Habitat>>: LocallyCoherentLineageStore<M, O::Habitat>,
type Algorithm<'p, P: LocalPartition<'p, R>> = GillespieAlgorithm
fn get_logical_partition_size<P: Partitioning>( args: &Self::Arguments, partitioning: &P ) -> PartitionSize
Auto Trait Implementations§
impl Freeze for GillespieAlgorithm
impl RefUnwindSafe for GillespieAlgorithm
impl Send for GillespieAlgorithm
impl Sync for GillespieAlgorithm
impl Unpin for GillespieAlgorithm
impl UnwindSafe for GillespieAlgorithm
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