24 bool wellFormed(
bool noEq =
false)
const;
31 bool transposedMat =
false;
50 bool wellFormed()
const;
62 template<
bool Separated = false>
64 :
public std::conditional_t<Separated, SeparatedFeasibilityConstraints, FeasibilityConstraints>
68 using Base = std::conditional_t<Separated, SeparatedFeasibilityConstraints, FeasibilityConstraints>;
79 template<
bool Separated = false>
80 struct QPProblem :
public std::conditional_t<Separated, SeparatedFeasibilityConstraints, FeasibilityConstraints>
88 template<
bool LSSeparated>
90 template<
bool LSSeparated>
95 using Base = std::conditional_t<Separated, SeparatedFeasibilityConstraints, FeasibilityConstraints>;
101 template<
bool Separated>
104 bool b1 = Base::wellFormed();
105 bool b2 = this->transposedMat ? (A.cols() == this->C.rows()) : (A.cols() == this->C.cols());
106 bool b3 = A.rows() == b.size();
107 return b1 && b2 && b3;
110 template<
bool Separated>
111 template<
bool LSSeparated>
113 :
Base(ls), G(ls.A.transpose() * ls.A), a(-ls.A.transpose() * ls.b)
117 template<
bool Separated>
122 template<
bool Separated>
123 template<
bool LSSeparated>
130 template<
bool Separated>
137 template<
bool Separated>
140 bool b1 = Base::wellFormed();
141 bool b2 = this->transposedMat ? (G.cols() == this->C.rows()) : (G.cols() == this->C.cols());
142 bool b3 = G.cols() == a.size();
143 bool b4 = G.cols() == this->C.cols();
144 return b1 && b2 && b3 && b4;
#define JRLQP_DLLAPI
Definition: api.h:35
Definition: BoxAndSingleConstraintSolver.h:37
struct JRLQP_DLLAPI SeparatedFeasibilityConstraints
Definition: problems.h:10
Definition: problems.h:17
Eigen::VectorXd u
Definition: problems.h:28
Eigen::VectorXd xu
Definition: problems.h:30
FeasibilityConstraints & operator=(const FeasibilityConstraints &)=default
FeasibilityConstraints()=default
Eigen::MatrixXd C
Definition: problems.h:26
Eigen::VectorXd l
Definition: problems.h:27
FeasibilityConstraints & operator=(FeasibilityConstraints &&)=default
FeasibilityConstraints(FeasibilityConstraints &&)=default
Eigen::VectorXd xl
Definition: problems.h:29
FeasibilityConstraints(const FeasibilityConstraints &)=default
Definition: problems.h:65
bool wellFormed() const
Definition: problems.h:102
Eigen::VectorXd b
Definition: problems.h:70
std::conditional_t< Separated, SeparatedFeasibilityConstraints, FeasibilityConstraints > Base
Definition: problems.h:68
Eigen::MatrixXd A
Definition: problems.h:69
Definition: problems.h:81
QPProblem & operator=(const QPProblem &qp)=default
QPProblem(QPProblem &&)=default
Eigen::VectorXd a
Definition: problems.h:97
QPProblem & operator=(const LeastSquareProblem< LSSeparated > &ls)
bool wellFormed() const
Definition: problems.h:138
Eigen::MatrixXd G
Definition: problems.h:96
double objCst
Definition: problems.h:98
QPProblem(const QPProblem &)=default
std::conditional_t< Separated, SeparatedFeasibilityConstraints, FeasibilityConstraints > Base
Definition: problems.h:95
QPProblem & operator=(QPProblem &&qp)=default
Definition: problems.h:42
SeparatedFeasibilityConstraints & operator=(SeparatedFeasibilityConstraints &&)=default
SeparatedFeasibilityConstraints(SeparatedFeasibilityConstraints &&)=default
Eigen::MatrixXd E
Definition: problems.h:52
SeparatedFeasibilityConstraints & operator=(const SeparatedFeasibilityConstraints &)=default
SeparatedFeasibilityConstraints(const SeparatedFeasibilityConstraints &)=default
Eigen::VectorXd f
Definition: problems.h:53
SeparatedFeasibilityConstraints()=default