All Classes and Interfaces
Class
Description
Output of
NumDiff.adjustSchemeToBounds(de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, int, de.labathome.trustconstr.enums.FiniteDifferenceMethod, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix):
the per-dimension finite-difference step (with sign flips and clamping
applied so each step lands inside the user-provided bounds) plus a per-
dimension flag indicating whether the central scheme had to be downgraded
to a one-sided scheme.Barrier optimization problem:
Basic 7-column progress report used for bound-constrained problems.
Broyden-Fletcher-Goldfarb-Shanno (BFGS) Hessian update strategy.
Builder for
BFGS; configure via BFGS.FACTORY.Box bounds
lb ≤ x ≤ ub on the optimisation variable, plus
a global keepFeasible flag controlling whether the algorithm is
allowed to step outside the box during line-searches and trial steps.Canonical-form constraint
Functional interface for the constraint Hessian-of-Lagrangian:
Sum_i v_eq[i] * H_{eq,i}(x) + Sum_j v_ineq[j] * H_{ineq,j}(x).Output shape of
CanonicalConstraint.initialConstraintsAsCanonical(int, java.util.List<de.labathome.trustconstr.CanonicalConstraint>, de.labathome.trustconstr.matrix.Matrix, boolean): the four arrays
(cEq, cIneq, JEq, JIneq) returned as a record.Cholesky factorisation of a symmetric positive-definite matrix.
Concatenation of several
LinearConstraint / NonlinearConstraint
objects into a single Constraint + Jacobian that the
orchestrator can pass straight to
EqualityConstrainedSQP.eqSQP(de.labathome.trustconstr.interfaces.IFunctionAndConstraint, de.labathome.trustconstr.interfaces.IGradientAndJacobian, de.labathome.trustconstr.interfaces.LagrangeHessian, de.labathome.trustconstr.matrix.Matrix, double, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.interfaces.StoppingCriterion, de.labathome.trustconstr.records.State, double, double, de.labathome.trustconstr.enums.ProjectionMethod, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.interfaces.LinearOperator) or
TrustRegionInteriorPoint.trustRegionInteriorPoint(java.util.function.ToDoubleBiFunction<de.labathome.trustconstr.matrix.Matrix, java.lang.Object>, java.util.function.BiFunction<de.labathome.trustconstr.matrix.Matrix, java.lang.Object, de.labathome.trustconstr.matrix.Matrix>, de.labathome.trustconstr.interfaces.LagrangeHessian, int, int, int, de.labathome.trustconstr.interfaces.Constraint, de.labathome.trustconstr.interfaces.Jacobian, de.labathome.trustconstr.matrix.Matrix, double, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.interfaces.GlobalStoppingCriteria, boolean[], double, de.labathome.trustconstr.records.State, double, double, double, double, de.labathome.trustconstr.enums.ProjectionMethod).Evaluator for the canonical-form constraints of the optimization problem:
constr_eq(x) = 0 and constr_ineq(x) ≤ 0.Compressed Sparse Column matrix.
Compressed Sparse Row matrix.
Incremental builder for
CSRMatrix using a Dictionary-of-Keys
(DOK) representation under the hood.Dense matrix backed by a column-major
double[] buffer of length
rows * cols.Backwards-compatible nested factory class.
Thin wrapper around LAPACK direct linear solvers for the trust-constr
KKT path.
Factorisation of a square matrix
A ready to repeatedly
DenseSolve.LUFactor.solve(double[]) against right-hand sides.Pair of canonical equality and inequality components produced by a
CanonicalConstraint's fun(x)
or jac(x).Byrd-Omojokun Trust-Region SQP method
What BFGS / SR1 should do when the curvature condition
(delta_grad * delta_x) ≤ threshold is violated.Box bounds
lb ≤ x ≤ ub used by
NumDiff.approxDerivative(java.util.function.DoubleUnaryOperator, double, de.labathome.trustconstr.records.FiniteDifferenceOptions) to clamp
finite-difference perturbations.Finite-difference scheme used by
NumDiff.approxDerivative(java.util.function.DoubleUnaryOperator, double, de.labathome.trustconstr.records.FiniteDifferenceOptions).Builder for
FiniteDifferenceOptions.Hessian update strategy with full dimensional internal representation.
FullHessianUpdateStrategy.FullHessianUpdateStrategyFactory<T extends FullHessianUpdateStrategy.FullHessianUpdateStrategyFactory<T>>
Shared base factory for
BFGS.BFGSFactory and SR1.SR1Factory.Bundle of an objective value
f(x) and a constraint vector c(x).Termination predicate consulted by the trust-region SQP and interior-point
loops once per outer iteration.
Bundle of a gradient
gradf(x) and a Jacobian dc/dx.Whether a Hessian-update strategy approximates the Hessian or its inverse.
Adapter that exposes a matrix-free
HessianProduct as a
BiFunction returning an explicit Hessian Matrix.A matrix-free Hessian: given the current point
x and a vector
p, return H(x) p.Interface for implementing Hessian update strategies.
Identity vector function
f(x) = x (Jacobian I).Combined evaluator returning
(f(x), constr(x)) in a single call.Combined evaluator returning
(gradf(x), gradconstr(x)) in a single call.Result of intersecting a parametric segment
x(t) = z + t*d with a
trust-region or box constraint.Trust-region interior-point progress report (10 columns).
Caller-supplied hook invoked once per outer iteration of the trust-constr
orchestrator.
Jacobian evaluator paired with
Constraint: returns the partial
derivatives of the canonical-form equality and inequality constraint
vectors with respect to x.Hessian of the Lagrangian
L(x, v) = f(x) + Sum v_i c_i(x) with
respect to x, returned as a LinearOperator so callers can
apply it to vectors without materialising the full n × n
matrix.Lagrangian Hessian
H_obj(x) + Sum_i v_i * H_{c_i}(x) as a
matrix-free LinearOperator-builder.Constraint Hessian-of-Lagrangian:
Sum_i v_eq[i] * H_{eq,i}(x) + Sum_j v_ineq[j] * H_{ineq,j}(x).Thin static facade over
dev.ludovic.netlib BLAS / LAPACK kernels,
specialised to DenseMatrix (column-major double[]).Linear constraint of the form
Matrix-free linear operator: applies an underlying linear map to a vector
without materialising the matrix.
Linear vector function
f(x) = A x and its derivatives.Abstract dense/sparse matrix base.
Static constructors.
Small static helpers that operate on
double[] vectors and
Matrix instances.Java port of scipy.optimize.minimize(method='trust-constr')
Nonlinear constraint of the form
Light-weight nonlinear vector function carrier for use inside
PreparedConstraint.Finite-difference Jacobians and gradients (mirrors scipy
_numdiff.approx_derivative).Why projected-CG terminated on the most recent inner solve.
User-facing constraint prepared for use by the trust-constr orchestrator.
How
Projections.projections(de.labathome.trustconstr.matrix.Matrix) should
factor the constraint Jacobian to build the null-space / least-squares /
row-space projectors.Linear operators that project onto the null space, range, and least-squares
solution set of a constraint Jacobian.
Quadratic-programming subproblem helpers used inside the trust-region
SQP / IP loops: the projected-CG inner solver, the equality-constrained
KKT direct factorization, the modified-dogleg trust-region step, and the
segment/box/sphere intersection routines that drive trust-region step
acceptance.
QR factorisation of a tall-or-square matrix
A (m x n with m >= n):
A = Q R with Q (m x n) having orthonormal columns and
R (n x n) upper triangular.Abstract base for trust-constr per-iteration progress reports.
Lower and upper residuals for a two-sided constraint
lb ≤ f(x) ≤ ub.Scalar function and its derivatives.
Builder for
ScalarFunction.Sparse-aware structured assembly: vstack, hstack, blockArray, and the
specialised KKT/Jacobian builders that
trust-constr relies on.Adapter from a
CSRMatrix or CSCMatrix to the existing
LinearOperator interface used throughout the algorithm.Sparse matrix backed by a Dictionary-of-Keys (DOK) representation:
a
HashMap keyed by the encoded (row, col) index.Static factories that produce
SparseMatrix instances.Pairing of a sparsity-pattern matrix
A with a precomputed
Curtis-Powell-Reid column grouping.Decorator that wraps a
Constraint + Jacobian source and
forces the jacEq / jacIneq return values to a specific
sparsity.Demo: spectral condensation of a 2D closed curve.
Equality-constrained SQP progress report (9 columns).
Symmetric-rank-1 (SR1) Hessian update strategy.
Builder for
SR1; configure via SR1.FACTORY.Mutable state threaded through the equality-path SQP outer loop.
Inner-loop result from
EqualityConstrainedSQP.eqSQP(de.labathome.trustconstr.interfaces.IFunctionAndConstraint, de.labathome.trustconstr.interfaces.IGradientAndJacobian, de.labathome.trustconstr.interfaces.LagrangeHessian, de.labathome.trustconstr.matrix.Matrix, double, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.interfaces.StoppingCriterion, de.labathome.trustconstr.records.State, double, double, de.labathome.trustconstr.enums.ProjectionMethod, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.interfaces.LinearOperator) and
TrustRegionInteriorPoint.trustRegionInteriorPoint(java.util.function.ToDoubleBiFunction<de.labathome.trustconstr.matrix.Matrix, java.lang.Object>, java.util.function.BiFunction<de.labathome.trustconstr.matrix.Matrix, java.lang.Object, de.labathome.trustconstr.matrix.Matrix>, de.labathome.trustconstr.interfaces.LagrangeHessian, int, int, int, de.labathome.trustconstr.interfaces.Constraint, de.labathome.trustconstr.interfaces.Jacobian, de.labathome.trustconstr.matrix.Matrix, double, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.matrix.Matrix, de.labathome.trustconstr.interfaces.GlobalStoppingCriteria, boolean[], double, de.labathome.trustconstr.records.State, double, double, double, double, de.labathome.trustconstr.enums.ProjectionMethod).IP-path extension of
State: adds the log-barrier coefficient and
the barrier-subproblem inner-loop tolerance carried alongside the standard
outer-iteration fields.Termination predicate consulted by the inner SQP loop.
FiniteDifferenceBounds variant constructed from a Bounds
record, propagating the keep_feasible flag.Singular-value decomposition
A = U * diag(s) * V^T.Which dispatch path actually ran inside
MinimizeTrustConstr: reported back to
the caller via OptimizeResult.method.Trust-region interior-point method.
Vector function and its derivatives.
Builder for
VectorFunction.Common surface implemented by every vector-valued function carrier the
trust-constr code passes around: the full
VectorFunction (objective wrapper with
caching and finite-difference fallbacks),
LinearVectorFunction (constant
Jacobian A), and
IdentityVectorFunction (Jacobian
I).