pub struct QpProblem<'a> {
pub n: usize,
pub m: usize,
pub h: &'a SymTMatrix,
pub g: &'a [Number],
pub a: &'a GenTMatrix,
pub bl: &'a [Number],
pub bu: &'a [Number],
pub xl: &'a [Number],
pub xu: &'a [Number],
pub hessian_inertia: HessianInertia,
}Expand description
A convex-or-nonconvex sparse QP:
min ½ xᵀ H x + gᵀ x
s.t. bl ≤ A x ≤ bu
xl ≤ x ≤ xuTwo-sided general bounds (equality is bl = bu); two-sided
variable bounds (fixed is xl = xu; free is ±NLP_*_BOUND_INF).
H is symmetric — only the upper triangle is stored.
The lifetime parameter ties the borrowed problem data to the caller’s storage; the solver never copies any of these fields.
Fields§
§n: usize§m: usize§h: &'a SymTMatrix§g: &'a [Number]§a: &'a GenTMatrix§bl: &'a [Number]§bu: &'a [Number]§xl: &'a [Number]§xu: &'a [Number]§hessian_inertia: HessianInertiaImplementations§
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for QpProblem<'a>
impl<'a> !Send for QpProblem<'a>
impl<'a> !Sync for QpProblem<'a>
impl<'a> !UnwindSafe for QpProblem<'a>
impl<'a> Freeze for QpProblem<'a>
impl<'a> Unpin for QpProblem<'a>
impl<'a> UnsafeUnpin for QpProblem<'a>
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