pub struct PerSupernodeStats {
pub snode_id: usize,
pub front_size: usize,
pub num_fully_summed: usize,
pub num_eliminated: usize,
pub num_delayed: usize,
pub num_1x1: usize,
pub num_2x2: usize,
pub max_l_entry: f64,
}Expand description
Per-supernode diagnostic statistics.
Collected during AptpNumeric::factor for each supernode processed.
Provides visibility into per-front behavior for analysis and comparison
with reference solvers (e.g., SPRAL).
Fields§
§snode_id: usizeSupernode index in postorder.
front_size: usizeFrontal matrix dimension (m).
num_fully_summed: usizeNumber of fully-summed rows/columns (k = supernode cols + delayed from children).
num_eliminated: usizeNumber of columns successfully eliminated (ne <= k).
num_delayed: usizeNumber of delayed columns (k - ne).
num_1x1: usizeNumber of 1x1 pivots accepted at this supernode.
num_2x2: usizeNumber of 2x2 pivot pairs accepted at this supernode.
max_l_entry: f64Maximum absolute L entry at this supernode (stability metric).
Trait Implementations§
Source§impl Clone for PerSupernodeStats
impl Clone for PerSupernodeStats
Source§fn clone(&self) -> PerSupernodeStats
fn clone(&self) -> PerSupernodeStats
Returns a duplicate 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 moreAuto Trait Implementations§
impl Freeze for PerSupernodeStats
impl RefUnwindSafe for PerSupernodeStats
impl Send for PerSupernodeStats
impl Sync for PerSupernodeStats
impl Unpin for PerSupernodeStats
impl UnsafeUnpin for PerSupernodeStats
impl UnwindSafe for PerSupernodeStats
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
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>
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