WPILibC++ 2027.0.0-alpha-4
Loading...
Searching...
No Matches
iteration_info.hpp
Go to the documentation of this file.
1// Copyright (c) Sleipnir contributors
2
3#pragma once
4
5#include <Eigen/Core>
6#include <Eigen/SparseCore>
7
8namespace slp {
9
10/// Solver iteration information exposed to an iteration callback.
11///
12/// @tparam Scalar Scalar type.
13template <typename Scalar>
15 /// The solver iteration.
17
18 /// The decision variables.
19 const Eigen::Vector<Scalar, Eigen::Dynamic>& x;
20
21 /// The gradient of the cost function.
22 const Eigen::SparseVector<Scalar>& g;
23
24 /// The Hessian of the Lagrangian.
25 const Eigen::SparseMatrix<Scalar>& H;
26
27 /// The equality constraint Jacobian.
28 const Eigen::SparseMatrix<Scalar>& A_e;
29
30 /// The inequality constraint Jacobian.
31 const Eigen::SparseMatrix<Scalar>& A_i;
32};
33
34} // namespace slp
Definition expression_graph.hpp:11
Solver iteration information exposed to an iteration callback.
Definition iteration_info.hpp:14
int iteration
The solver iteration.
Definition iteration_info.hpp:16
const Eigen::Vector< Scalar, Eigen::Dynamic > & x
The decision variables.
Definition iteration_info.hpp:19
const Eigen::SparseMatrix< Scalar > & A_e
The equality constraint Jacobian.
Definition iteration_info.hpp:28
const Eigen::SparseMatrix< Scalar > & A_i
The inequality constraint Jacobian.
Definition iteration_info.hpp:31
const Eigen::SparseVector< Scalar > & g
The gradient of the cost function.
Definition iteration_info.hpp:22
const Eigen::SparseMatrix< Scalar > & H
The Hessian of the Lagrangian.
Definition iteration_info.hpp:25