Skip to main content

pounce_restoration/
lib.rs

1//! POUNCE restoration phase.
2//!
3//! Port of Ipopt's `Algorithm/IpResto*` files. When the line search
4//! cannot accept any step, control switches into the restoration
5//! phase, which solves a relaxed feasibility problem (minimize the
6//! ℓ1 norm of the constraint violation, plus a regularization
7//! against `x_R`). On success it returns to the regular IPM with a
8//! new iterate. See `ref/Ipopt/AGENT_REFERENCE/RESTORATION.md`.
9//!
10//! Phase 9 ships the trait surface and the structural skeletons of
11//! each `Resto*` strategy; concrete arithmetic ports incrementally
12//! once the regular-phase strategies (Phase 7) are exercising the
13//! main loop on real problems.
14
15#![cfg_attr(test, allow(clippy::unwrap_used, clippy::expect_used))]
16
17pub mod aug_resto_system_solver;
18pub mod conv_check;
19pub mod init;
20pub mod min_c_1nrm;
21pub mod output;
22pub mod resto_alg_builder;
23pub mod resto_inner_solver;
24pub mod resto_nlp;
25pub mod resto_resto;
26pub mod r#trait;
27
28pub use r#trait::RestorationPhase;