pub struct ActivityData {
pub x_l: BoundSide,
pub x_u: BoundSide,
pub d_l: BoundSide,
pub d_u: BoundSide,
pub sigma_x: Vec<f64>,
pub sigma_s: Vec<f64>,
pub hessian: Rc<dyn SymMatrix>,
pub jac_c: Rc<dyn Matrix>,
pub jac_d: Rc<dyn Matrix>,
}Expand description
The converged quantities the activity classification reads, in the
engine frame. See crate::activity for what it does with them. The
barrier parameter comes from BarrierIterate::barrier_mu, and the maps
and scaling from BarrierIterate::model_maps and
BarrierIterate::scaling.
Fields§
§x_l: BoundSideLower variable bounds.
x_u: BoundSideUpper variable bounds.
d_l: BoundSideLower bounds of the inequality rows.
d_u: BoundSideUpper bounds of the inequality rows.
sigma_x: Vec<f64>The barrier diagonal of the x block, one entry per variable the
engine kept, both sides summed.
An engine that bounds the diagonal in no way of its own writes
mult / slack from Self::x_l and Self::x_u, summed. pounce
writes the diagonal it factored instead, which differs from that sum
where the gh#737 ceiling capped an entry or a crossover point took the
declared-bound frame (gh#654).
sigma_s: Vec<f64>The barrier diagonal of the s block, one entry per inequality row,
from Self::d_l and Self::d_u as for Self::sigma_x.
hessian: Rc<dyn SymMatrix>The exact Hessian of the Lagrangian at the converged point.
jac_c: Rc<dyn Matrix>The Jacobian of the equality rows at the converged point.
jac_d: Rc<dyn Matrix>The Jacobian of the inequality rows at the converged point.
Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for ActivityData
impl !Send for ActivityData
impl !Sync for ActivityData
impl !UnwindSafe for ActivityData
impl Freeze for ActivityData
impl Unpin for ActivityData
impl UnsafeUnpin for ActivityData
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
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