Sleipnir C++ API
Loading...
Searching...
No Matches
interior_point_matrix_callbacks.hpp
1// Copyright (c) Sleipnir contributors
2
3#pragma once
4
5#include <functional>
6
7#include <Eigen/Core>
8#include <Eigen/SparseCore>
9
10#include "sleipnir/optimization/solver/util/problem_scaling.hpp"
11
12namespace slp {
13
17template <typename Scalar>
20 using DenseVector = Eigen::Vector<Scalar, Eigen::Dynamic>;
22 using SparseMatrix = Eigen::SparseMatrix<Scalar>;
24 using SparseVector = Eigen::SparseVector<Scalar>;
25
28
31
34
54 std::function<Scalar(const DenseVector& x)> f;
55
75 std::function<SparseVector(const DenseVector& x)> g;
76
110 std::function<SparseMatrix(const DenseVector& x, const DenseVector& y,
111 const DenseVector& z)>
113
145 std::function<SparseMatrix(const DenseVector& x, const DenseVector& y,
146 const DenseVector& z)>
148
168 std::function<DenseVector(const DenseVector& x)> c_e;
169
196 std::function<SparseMatrix(const DenseVector& x)> A_e;
197
217 std::function<DenseVector(const DenseVector& x)> c_i;
218
245 std::function<SparseMatrix(const DenseVector& x)> A_i;
246
250};
251
252} // namespace slp
Definition intrusive_shared_ptr.hpp:27
Definition interior_point_matrix_callbacks.hpp:18
ProblemScaling< Scalar > scaling
Definition interior_point_matrix_callbacks.hpp:249
Eigen::SparseVector< Scalar > SparseVector
Type alias for sparse vector.
Definition interior_point_matrix_callbacks.hpp:24
std::function< DenseVector(const DenseVector &x)> c_e
Definition interior_point_matrix_callbacks.hpp:168
std::function< SparseMatrix(const DenseVector &x)> A_i
Definition interior_point_matrix_callbacks.hpp:245
std::function< SparseVector(const DenseVector &x)> g
Definition interior_point_matrix_callbacks.hpp:75
std::function< SparseMatrix(const DenseVector &x)> A_e
Definition interior_point_matrix_callbacks.hpp:196
std::function< SparseMatrix(const DenseVector &x, const DenseVector &y, const DenseVector &z)> H_c
Definition interior_point_matrix_callbacks.hpp:147
std::function< SparseMatrix(const DenseVector &x, const DenseVector &y, const DenseVector &z)> H
Definition interior_point_matrix_callbacks.hpp:112
int num_inequality_constraints
Number of inequality constraints.
Definition interior_point_matrix_callbacks.hpp:33
int num_equality_constraints
Number of equality constraints.
Definition interior_point_matrix_callbacks.hpp:30
std::function< Scalar(const DenseVector &x)> f
Definition interior_point_matrix_callbacks.hpp:54
std::function< DenseVector(const DenseVector &x)> c_i
Definition interior_point_matrix_callbacks.hpp:217
int num_decision_variables
Number of decision variables.
Definition interior_point_matrix_callbacks.hpp:27
Eigen::SparseMatrix< Scalar > SparseMatrix
Type alias for sparse matrix.
Definition interior_point_matrix_callbacks.hpp:22
Eigen::Vector< Scalar, Eigen::Dynamic > DenseVector
Type alias for dense vector.
Definition interior_point_matrix_callbacks.hpp:20