6#include <Eigen/SparseCore>
19template <
typename Scalar>
21 const Eigen::SparseMatrix<Scalar>& A_e,
22 const Eigen::Vector<Scalar, Eigen::Dynamic>& c_e) {
29 return A_e.rows() > 0 && (A_e.transpose() * c_e).norm() < Scalar(1e-6) &&
30 c_e.norm() > Scalar(1e-2);
40template <
typename Scalar>
42 const Eigen::SparseMatrix<Scalar>& A_i,
43 const Eigen::Vector<Scalar, Eigen::Dynamic>& c_i) {
56 Eigen::Vector<Scalar, Eigen::Dynamic> c_i_plus = c_i.cwiseMin(Scalar(0));
57 if ((A_i.transpose() * c_i_plus).norm() < Scalar(1e-6) &&
58 c_i_plus.norm() > Scalar(1e-6)) {
Definition expression_graph.hpp:11
bool is_equality_locally_infeasible(const Eigen::SparseMatrix< Scalar > &A_e, const Eigen::Vector< Scalar, Eigen::Dynamic > &c_e)
Returns true if the problem's equality constraints are locally infeasible.
Definition is_locally_infeasible.hpp:20
bool is_inequality_locally_infeasible(const Eigen::SparseMatrix< Scalar > &A_i, const Eigen::Vector< Scalar, Eigen::Dynamic > &c_i)
Returns true if the problem's inequality constraints are locally infeasible.
Definition is_locally_infeasible.hpp:41