#include <CGAL/QP_models.h>
$$
(QP)$$  minimize$$  x^{T}Dx+c^{T}x+c_{0} 
subject to$$  Ax ~ b,  
l x u 
in $$n real variables $$x=(x_{0},...,x_{n1}). Here,
If $$D=0, the program is a linear program; if the variable bounds are $$x 0, we have a nonnegative program.
This class allows you to build your program entry by entry, using the setmethods below.
If you only need to wrap existing (randomaccess) iterators over your own data, then you may use any of the four models Quadratic_program_from_iterators<A_it, B_it, R_it, FL_it, L_it, FU_it, U_it, D_it, C_it>, Linear_program_from_iterators<A_it, B_it, R_it, FL_it, L_it, FU_it, U_it, C_it>, Nonnegative_quadratic_program_from_iterators<A_it, B_it, R_it, D_it, C_it>, and Nonnegative_linear_program_from_iterators<A_it, B_it, R_it, C_it>.
If you want to read a quadratic program in MPSFormat from a stream, please use the model Quadratic_program_from_mps<NT>.
 
The number type of the program entries.

 
constructs a quadratic program with no variables and no constraints, ready
for data to be added. Unless relations are explicitly set, they will
be of type default_r. Unless bounds are explicitly set, they
will be as specified by default_fl (finite lower bound?),
default_l (lower bound value if lower bound is finite),
default_fu (finite upper bound?), and
default_l (upper bound value if upper bound is finite). If all
parameters take their default values, we thus get equality constraints
and bounds $$x 0 by default. Numerical entries that are not
explicitly set will default to $$0.


 returns true if and only if qp is a linear program.  

 returns true if and only if qp is a nonnegative program.  

 sets the entry $$A_{ij} in column $$j and row $$i of the constraint matrix $$A of qp to val. An existing entry is overwritten. qp is enlarged if necessary to accomodate this entry.  

 sets the entry $$b_{i} of qp to val. An existing entry is overwritten. qp is enlarged if necessary to accomodate this entry.  

 
sets the entry $$ ~ _{i} of qp to rel. CGAL::SMALLER means that the $$ith constraint is of type ``$$ '', CGAL::EQUAL means ``$$='', and CGAL::LARGER encodes ``$$ ''. An existing entry is overwritten. qp is enlarged if necessary to accomodate this entry.  

 
if is_finite, this sets the entry $$l_{j} of qp to val, otherwise it sets $$l_{j} to $$ . An existing entry is overwritten. qp is enlarged if necessary to accomodate this entry.  

 
if is_finite, this sets the entry $$u_{j} of qp to val, otherwise it sets $$u_{j} to $$ . An existing entry is overwritten. qp is enlarged if necessary to accomodate this entry.  

 sets the entry $$c_{j} of qp to val. An existing entry is overwritten. qp is enlarged if necessary to accomodate this entry.  

 sets the entry $$c_{0} of qp to val. An existing entry is overwritten.  


sets the entries
$$2D_{ij} and $$2D_{ji} of qp to val. Existing entries are
overwritten. qp is enlarged if necessary to accomodate these entries.

QP_solver/first_qp.cpp
QP_solver/first_lp.cpp
QP_solver/first_nonnegative_qp.cpp
QP_solver/first_nonnegative_lp.cpp
QP_solver/invert_matrix.cpp