pub struct TinyStepDualStall {
pub max_iters: usize,
/* private fields */
}Fields§
§max_iters: usizetiny_step_dual_stall_iters; 0 never releases (upstream’s rule).
Implementations§
Source§impl TinyStepDualStall
impl TinyStepDualStall
pub fn new(max_iters: usize) -> Self
Sourcepub fn observe(
&mut self,
y_settled: bool,
acceptable: bool,
dual_inf: Number,
) -> bool
pub fn observe( &mut self, y_settled: bool, acceptable: bool, dual_inf: Number, ) -> bool
One tiny primal step. y_settled: the multiplier step is already
below tiny_step_y_tol, so upstream’s own rule applies and this
one has nothing to add. acceptable: the iterate passes the
acceptable-level test, so it has an exit of its own
(acceptable_iter) and is left to it – cutting it short would turn
Solved_To_Acceptable_Level into a tiny-step stop (gh#532’s
dual_inf_scale_kappa=0 case, where the dual sits on a round-off
floor at an acceptable point). dual_inf: the scaled dual
infeasibility at the iterate. Returns whether the stop may proceed
as if the multiplier step had settled.
Trait Implementations§
Source§impl Clone for TinyStepDualStall
impl Clone for TinyStepDualStall
Auto Trait Implementations§
impl Freeze for TinyStepDualStall
impl RefUnwindSafe for TinyStepDualStall
impl Send for TinyStepDualStall
impl Sync for TinyStepDualStall
impl Unpin for TinyStepDualStall
impl UnsafeUnpin for TinyStepDualStall
impl UnwindSafe for TinyStepDualStall
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,
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