Expand description
§Outer-objective contract (lower shared layer)
The interface types that the families layer must name, implement, and
return to participate in outer smoothing-parameter optimization, hosted
below both families and solver so families stop importing up into
crate::solver::rho_optimizer (#1135).
What lives here is exactly the family ↔ solver contract: the matrix-free
OuterHessianOperator trait that families implement, the OuterEval /
HessianResult result types they return, the EfsEval step bundle, and
the capability enums (Derivative, DeclaredHessianForm,
OuterHessianMaterialization) plus the operator-shape error
(OuterStrategyError).
What does not live here is the solver’s use of the contract — the outer
runner, ARC/trust-region planning, seeding, caching, barrier configuration,
and OuterProblem — all of which stay in crate::solver::rho_optimizer and
depend downward on this module. crate::solver::rho_optimizer re-exports
these names so existing crate::solver::rho_optimizer::* paths keep working.
Structs§
- EfsEval
- Result bundle returned by the EFS (extended Fellner–Schall) evaluation path. Pure data: families compute the additive step and the optional curvature/gradient diagnostics; the solver consumes them.
- Outer
Eval - Shared outer-objective result used by optimizer-facing objective implementations.
Enums§
- Declared
Hessian Form - Capability-time declaration of what shape the outer Hessian takes.
Replaces the binary
Derivativefor the Hessian field onOuterCapability: callers that know the shape upfront declare it here, and the planner routes between dense ARC and matrix-free trust-region before seed evaluation rather than dynamically branching onseed_eval.hessianat runtime. - Derivative
- Whether an analytic derivative is available for a given order.
- Hessian
Result - Explicit Hessian result replacing
Option<Array2<f64>>. - Outer
Hessian Materialization - Exact dense-materialization route exposed by an outer Hessian operator.
- Outer
Strategy Error - Typed error for the outer-strategy Hessian-operator surface.
Traits§
- Outer
Hessian Operator - Matrix-free outer Hessian operator.