pub struct ParametricActiveSetSolver { /* private fields */ }Expand description
The sparse parametric active-set QP solver (§4.2 of the design note). Owns a single linear-solver backend; future Schur- complement state lives here too.
Implementations§
Source§impl ParametricActiveSetSolver
impl ParametricActiveSetSolver
pub fn new(backend: Box<dyn SparseSymLinearSolverInterface>) -> Self
Trait Implementations§
Source§impl QpSolver for ParametricActiveSetSolver
impl QpSolver for ParametricActiveSetSolver
Source§fn solve(
&mut self,
qp: &QpProblem<'_>,
ws: Option<&QpWarmStart>,
opts: &QpOptions,
) -> Result<QpSolution, QpError>
fn solve( &mut self, qp: &QpProblem<'_>, ws: Option<&QpWarmStart>, opts: &QpOptions, ) -> Result<QpSolution, QpError>
Solve a single QP.
ws == None ⇒ cold start (phase-1
elastic mode infers the initial working set when the
machinery lands).Source§fn solve_parametric(
&mut self,
qp_prev: &QpProblem<'_>,
sol_prev: &QpSolution,
qp_new: &QpProblem<'_>,
opts: &QpOptions,
) -> Result<QpSolution, QpError>
fn solve_parametric( &mut self, qp_prev: &QpProblem<'_>, sol_prev: &QpSolution, qp_new: &QpProblem<'_>, opts: &QpOptions, ) -> Result<QpSolution, QpError>
Source§fn solve_with_working_set(
&mut self,
qp: &QpProblem<'_>,
working: &WorkingSet,
opts: &QpOptions,
) -> Result<QpSolution, QpError>
fn solve_with_working_set( &mut self, qp: &QpProblem<'_>, working: &WorkingSet, opts: &QpOptions, ) -> Result<QpSolution, QpError>
Warm-start variant that takes ONLY the working set from a
previous solve (not a primal
x). Useful when the caller
— e.g., the SQP outer loop — has a previous QP’s working
set but no compatible primal, because the new QP’s
constraint RHS has shifted (each SQP linearization
translates bl ≤ Ax ≤ bu by -c(x_k)). Read moreAuto Trait Implementations§
impl !RefUnwindSafe for ParametricActiveSetSolver
impl !Send for ParametricActiveSetSolver
impl !Sync for ParametricActiveSetSolver
impl !UnwindSafe for ParametricActiveSetSolver
impl Freeze for ParametricActiveSetSolver
impl Unpin for ParametricActiveSetSolver
impl UnsafeUnpin for ParametricActiveSetSolver
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