pub enum SolveStatus {
Optimal,
Acceptable,
Infeasible,
LocalInfeasibility,
MaxIterations,
NumericalError,
Unbounded,
RestorationFailed,
EvaluationError,
UserRequestedStop,
InternalError,
}Expand description
Status of the solve.
Variants§
Optimal
Converged to optimal solution within tolerance.
Acceptable
Converged to an acceptable solution: KKT residuals within the
relaxed acceptable-level tolerances (matching Ipopt’s
Solved_To_Acceptable_Level). Counted as “solved” by the
benchmark reporter — the iterate is at a stationary point that
Ipopt’s default user-facing settings would also return.
Infeasible
Problem is infeasible.
LocalInfeasibility
Local infeasibility detected: constraint violation is at a stationary point (gradient of violation ≈ 0) but violation is still large. For NE-to-LS reformulations, this means the system is inconsistent and x* is the best least-squares solution.
MaxIterations
Reached maximum number of iterations.
NumericalError
Numerical difficulties (e.g., singular KKT system).
Unbounded
Problem appears unbounded below.
RestorationFailed
Restoration phase failed.
EvaluationError
User callback returned false, indicating evaluation failure at the
current iterate (not during line search, where failures cause step
rejection instead).
UserRequestedStop
Intermediate callback returned false, requesting early termination.
InternalError
Internal error.
Trait Implementations§
Source§impl Clone for SolveStatus
impl Clone for SolveStatus
Source§fn clone(&self) -> SolveStatus
fn clone(&self) -> SolveStatus
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SolveStatus
impl Debug for SolveStatus
Source§impl PartialEq for SolveStatus
impl PartialEq for SolveStatus
impl Copy for SolveStatus
impl Eq for SolveStatus
impl StructuralPartialEq for SolveStatus
Auto Trait Implementations§
impl Freeze for SolveStatus
impl RefUnwindSafe for SolveStatus
impl Send for SolveStatus
impl Sync for SolveStatus
impl Unpin for SolveStatus
impl UnsafeUnpin for SolveStatus
impl UnwindSafe for SolveStatus
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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