pub struct IterRecord {
pub iter: i32,
pub objective: f64,
pub inf_pr: f64,
pub inf_du: f64,
pub mu: f64,
pub d_norm: f64,
pub regularization: f64,
pub alpha_dual: f64,
pub alpha_primal: f64,
pub alpha_primal_char: char,
pub ls_trials: i32,
}Expand description
One row of per-iteration data — same numbers that
IpoptAlgorithm prints to stdout each iteration (the “iter
objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls”
line). Captured into SolveStatistics::iterations when a
JSON / programmatic consumer needs the trajectory rather than
just the final state.
Field semantics mirror upstream IpOrigIterationOutput.cpp:152
(Snprintf block) so a row in JSON round-trips back into the
same console table verbatim.
Fields§
§iter: i32Iteration index, starting at 0.
objective: f64Unscaled objective f(x_k) at the start of iter k.
inf_pr: f64Primal infeasibility (max-norm of constraint violation).
inf_du: f64Dual infeasibility (max-norm of grad-Lagrangian).
mu: f64Barrier parameter μ.
d_norm: f64||d_xs||_∞ of the search step. 0.0 on iter 0 (no step yet).
regularization: f64Hessian regularization δ_w applied this iter; 0.0 when
no regularization was needed (printed as - in the console).
alpha_dual: f64Dual step length.
alpha_primal: f64Primal step length.
alpha_primal_char: charSingle-character tag for the alpha-primal column (f, h,
r for restoration etc.) — matches upstream’s per-iter tag.
ls_trials: i32Number of backtracking line-search trials this iter.
Trait Implementations§
Source§impl Clone for IterRecord
impl Clone for IterRecord
Source§fn clone(&self) -> IterRecord
fn clone(&self) -> IterRecord
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for IterRecord
impl Debug for IterRecord
Source§impl Default for IterRecord
impl Default for IterRecord
Source§fn default() -> IterRecord
fn default() -> IterRecord
Source§impl<'de> Deserialize<'de> for IterRecord
impl<'de> Deserialize<'de> for IterRecord
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<IterRecord, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<IterRecord, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for IterRecord
impl Serialize for IterRecord
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for IterRecord
impl RefUnwindSafe for IterRecord
impl Send for IterRecord
impl Sync for IterRecord
impl Unpin for IterRecord
impl UnsafeUnpin for IterRecord
impl UnwindSafe for IterRecord
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> ⓘ
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