pub struct RedHessianResult {
pub var_indices: Vec<usize>,
pub hr: Vec<Number>,
pub eigenvalues: Option<Vec<Number>>,
pub eigenvectors: Option<Vec<Number>>,
}Expand description
Outputs of try_compute_red_hessian: the column-major n × n
reduced Hessian (hr), the variable indices var_indices that
label its rows/cols (so a downstream JSON consumer can map back to
AMPL var names), and the optional eigendecomposition.
Fields§
§var_indices: Vec<usize>var-x indices (algorithm-side, length n) that label the
rows/cols of hr, ordered by the 1..n slot from the AMPL
red_hessian suffix. Fixed variables are skipped (they cannot
participate in the reduced Hessian).
hr: Vec<Number>Column-major n × n reduced Hessian.
eigenvalues: Option<Vec<Number>>Optional ascending eigenvalues (length n).
eigenvectors: Option<Vec<Number>>Optional column-major eigenvectors (length n²).
Auto Trait Implementations§
impl Freeze for RedHessianResult
impl RefUnwindSafe for RedHessianResult
impl Send for RedHessianResult
impl Sync for RedHessianResult
impl Unpin for RedHessianResult
impl UnsafeUnpin for RedHessianResult
impl UnwindSafe for RedHessianResult
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> 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