WPILibC++ 2027.0.0-alpha-2
Loading...
Searching...
No Matches
slp::SQPMatrixCallbacks Struct Reference

Matrix callbacks for the Sequential Quadratic Programming (SQP) solver. More...

#include </home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/sleipnir/include/sleipnir/optimization/solver/sqp.hpp>

Public Attributes

std::function< double(const Eigen::VectorXd &x)> f
 Cost function value f(x) getter.
 
std::function< Eigen::SparseVector< double >(const Eigen::VectorXd &x)> g
 Cost function gradient ∇f(x) getter.
 
std::function< Eigen::SparseMatrix< double >(const Eigen::VectorXd &x, const Eigen::VectorXd &y)> H
 Lagrangian Hessian ∇ₓₓ²L(x, y) getter.
 
std::function< Eigen::VectorXd(const Eigen::VectorXd &x)> c_e
 Equality constraint value cₑ(x) getter.
 
std::function< Eigen::SparseMatrix< double >(const Eigen::VectorXd &x)> A_e
 Equality constraint Jacobian ∂cₑ/∂x getter.
 

Detailed Description

Matrix callbacks for the Sequential Quadratic Programming (SQP) solver.

Member Data Documentation

◆ A_e

std::function<Eigen::SparseMatrix<double>(const Eigen::VectorXd& x)> slp::SQPMatrixCallbacks::A_e

Equality constraint Jacobian ∂cₑ/∂x getter.

///         [∇ᵀcₑ₁(xₖ)]
/// Aₑ(x) = [∇ᵀcₑ₂(xₖ)]
///         [    ⋮    ]
///         [∇ᵀcₑₘ(xₖ)]
/// 
Variable Rows Columns
x num_decision_variables 1
Aₑ(x) num_equality_constraints num_decision_variables

◆ c_e

std::function<Eigen::VectorXd(const Eigen::VectorXd& x)> slp::SQPMatrixCallbacks::c_e

Equality constraint value cₑ(x) getter.

Variable Rows Columns
x num_decision_variables 1
cₑ(x) num_equality_constraints 1

◆ f

std::function<double(const Eigen::VectorXd& x)> slp::SQPMatrixCallbacks::f

Cost function value f(x) getter.

Variable Rows Columns
x num_decision_variables 1
f(x) 1 1

◆ g

std::function<Eigen::SparseVector<double>(const Eigen::VectorXd& x)> slp::SQPMatrixCallbacks::g

Cost function gradient ∇f(x) getter.

Variable Rows Columns
x num_decision_variables 1
∇f(x) num_decision_variables 1

◆ H

std::function<Eigen::SparseMatrix<double>(const Eigen::VectorXd& x, const Eigen::VectorXd& y)> slp::SQPMatrixCallbacks::H

Lagrangian Hessian ∇ₓₓ²L(x, y) getter.

L(xₖ, yₖ) = f(xₖ) − yₖᵀcₑ(xₖ)

Variable Rows Columns
x num_decision_variables 1
y num_equality_constraints 1
∇ₓₓ²L(x, y) num_decision_variables num_decision_variables

The documentation for this struct was generated from the following file: