Struct FaerSparseLuReuseOwner
pub struct FaerSparseLuReuseOwner { /* private fields */ }Description
Bounded host-serial owner of one accepted faer sparse-LU reuse state.
Implementations§
§impl FaerSparseLuReuseOwner
impl FaerSparseLuReuseOwner
pub fn new(
plan: SolverPlan,
maximum_attempts: NonZero<usize>,
) -> Result<FaerSparseLuReuseOwner, Diagnostic>
pub fn new( plan: SolverPlan, maximum_attempts: NonZero<usize>, ) -> Result<FaerSparseLuReuseOwner, Diagnostic>
Construct the exact sparse-LU/identity/fast owner.
§Errors
Returns EQ0807 for another solver policy or an attempt bound outside
the closed interval 2..=64.
pub fn execute(
&mut self,
admitted: AdmittedExecution<'_>,
) -> Result<AcceptedLinearExecution, Diagnostic>
pub fn execute( &mut self, admitted: AdmittedExecution<'_>, ) -> Result<AcceptedLinearExecution, Diagnostic>
Execute one separately admitted host-linear solve and commit reusable factors only after solver and execution acceptance both succeed.
§Errors
Returns a structured diagnostic for an incompatible binding, exhausted capacity, factorization/solve failure, or either acceptance failure.
pub const fn plan(&self) -> SolverPlan
pub const fn plan(&self) -> SolverPlan
Immutable numerical policy bound by this owner.
pub const fn maximum_attempts(&self) -> NonZero<usize>
pub const fn maximum_attempts(&self) -> NonZero<usize>
Maximum post-preflight numerical attempts.
pub const fn attempted_solve_count(&self) -> usize
pub const fn attempted_solve_count(&self) -> usize
Numerical attempts begun after successful preflight.
pub const fn accepted_solve_count(&self) -> usize
pub const fn accepted_solve_count(&self) -> usize
Executions committed after both acceptance boundaries.
pub const fn symbolic_factorization_count(&self) -> usize
pub const fn symbolic_factorization_count(&self) -> usize
Successfully committed symbolic constructions.
pub const fn numeric_factorization_count(&self) -> usize
pub const fn numeric_factorization_count(&self) -> usize
Successfully committed numeric constructions.
pub const fn symbolic_reuse_identity(&self) -> Option<[u8; 32]>
pub const fn symbolic_reuse_identity(&self) -> Option<[u8; 32]>
Symbolic identity of the last committed accepted state.
pub const fn numeric_reuse_identity(&self) -> Option<[u8; 32]>
pub const fn numeric_reuse_identity(&self) -> Option<[u8; 32]>
Numeric identity of the last committed accepted state.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for FaerSparseLuReuseOwner
impl !RefUnwindSafe for FaerSparseLuReuseOwner
impl Send for FaerSparseLuReuseOwner
impl !Sync for FaerSparseLuReuseOwner
impl Unpin for FaerSparseLuReuseOwner
impl UnsafeUnpin for FaerSparseLuReuseOwner
impl UnwindSafe for FaerSparseLuReuseOwner
Blanket Implementations§
Source§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Source§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
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
§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
§fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§impl<T> ConvUtil for T
impl<T> ConvUtil for T
§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
§fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
§fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
Source§impl<T> From<T> for T
impl<T> From<T> for T
Source§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
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>
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>where
F: FnOnce(&Self) -> bool,
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
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§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Same for T
impl<T> Same for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.