pounce-algorithm 0.3.0

Algorithm-side core for POUNCE (port of Ipopt's src/Algorithm/): IteratesVector, IpoptData, CalculatedQuantities, KKT solvers, line search, mu update, conv check, initializer, IpoptAlg main loop, AlgBuilder.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
//! Trait — port of `IpPDSystemSolver.hpp`. The 8-block primal-dual
//! system solver. Implementations: [`super::pd_full_space_solver`].

use pounce_linsol::ESymSolverStatus;

pub trait PdSystemSolver {
    /// Run the configured iterative-refinement loop on the 8-block
    /// system. Phase 6 placeholder for the full-signature method;
    /// `super::pd_full_space_solver::PdFullSpaceSolver::solve` will
    /// implement it once `IteratesVector` is wired through.
    fn solve_status(&self) -> ESymSolverStatus;
}