pub struct VerifyOutcome {Show 22 fields
pub n_vars: usize,
pub n_cons: usize,
pub nl_sha256: String,
pub sol_sha256: String,
pub solve_result_num: Option<i32>,
pub feas_tol: Number,
pub opt_tol: Number,
pub max_con_violation: Number,
pub worst_con: Option<RowReport>,
pub max_bound_violation: Number,
pub worst_bound: Option<RowReport>,
pub feasible: bool,
pub objective: Option<Number>,
pub duals_present: bool,
pub stationarity: Option<Number>,
pub dual_sign: Option<i32>,
pub constraint_complementarity: Option<Number>,
pub bound_multipliers_present: bool,
pub bound_complementarity: Option<Number>,
pub stationarity_with_bound_multipliers: Option<Number>,
pub optimal: Option<bool>,
pub verified: bool,
}Expand description
The fully-evaluated verification result. Serialized to the JSON receipt and rendered to the console.
Fields§
§n_vars: usize§n_cons: usize§nl_sha256: String§sol_sha256: String§solve_result_num: Option<i32>§feas_tol: Number§opt_tol: Number§max_con_violation: Number§worst_con: Option<RowReport>§max_bound_violation: Number§worst_bound: Option<RowReport>§feasible: bool§objective: Option<Number>§duals_present: bool§stationarity: Option<Number>§dual_sign: Option<i32>§constraint_complementarity: Option<Number>max_i |λ_i| · dist(g_i, active side) over rows. NOT the
quantity a solver reports as Complementarity — see
bound_complementarity.
bound_multipliers_present: boolWhether the .sol carried ipopt_zL_out / ipopt_zU_out.
bound_complementarity: Option<Number>max_j max(|z_L·(x−x_L)|, |z_U·(x_U−x)|) over variables — the
quantity Ipopt prints as Complementarity. None when the .sol
carried no bound multipliers, in which case it is not checked
rather than zero.
stationarity_with_bound_multipliers: Option<Number>Exact (non-projected) dual infeasibility
‖∇f + sign·Jᵀλ − (z_L^suffix + z_U^suffix)‖∞, available only when
both duals and bound multipliers are present.
optimal: Option<bool>§verified: boolTrait Implementations§
Auto Trait Implementations§
impl Freeze for VerifyOutcome
impl RefUnwindSafe for VerifyOutcome
impl Send for VerifyOutcome
impl Sync for VerifyOutcome
impl Unpin for VerifyOutcome
impl UnsafeUnpin for VerifyOutcome
impl UnwindSafe for VerifyOutcome
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T, U> Imply<T> for U
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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