pub struct LpSolution {
pub objective: f64,
pub primal: Vec<f64>,
pub dual: Vec<f64>,
pub reduced_costs: Vec<f64>,
pub iterations: u64,
pub solve_time_seconds: f64,
}Expand description
Complete solution from a successful LP solve.
All values are in the original (unscaled) problem space. Dual values
are pre-normalized to the canonical sign convention defined in
Solver Abstraction SS8
before this struct is returned – solver-specific sign differences are
resolved within the crate::SolverInterface implementation.
Fields§
§objective: f64Optimal objective value (minimization sense).
primal: Vec<f64>Primal variable values, indexed by column (length equals num_cols).
dual: Vec<f64>Dual multipliers (shadow prices), indexed by row (length equals num_rows).
Normalized to canonical sign convention.
reduced_costs: Vec<f64>Reduced costs, indexed by column (length equals num_cols).
iterations: u64Number of simplex iterations performed for this solve.
solve_time_seconds: f64Wall-clock solve time in seconds (excluding retry overhead).
Trait Implementations§
Source§impl Clone for LpSolution
impl Clone for LpSolution
Source§fn clone(&self) -> LpSolution
fn clone(&self) -> LpSolution
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 LpSolution
impl RefUnwindSafe for LpSolution
impl Send for LpSolution
impl Sync for LpSolution
impl Unpin for LpSolution
impl UnsafeUnpin for LpSolution
impl UnwindSafe for LpSolution
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