25 #ifndef CASADI_CPLEX_INTERFACE_HPP
26 #define CASADI_CPLEX_INTERFACE_HPP
28 #include "casadi/core/conic_impl.hpp"
29 #include <casadi/interfaces/cplex/casadi_conic_cplex_export.h>
30 #include "ilcplex/cplexx.h"
61 std::vector<double>
rhs;
79 std::vector<CPXDIM>
a_row, h_row;
84 std::vector<double> socp_qval,
socp_lbound, socp_lval, socp_lbx;
107 const std::map<std::string, Sparsity>& st) {
113 const std::map<std::string, Sparsity>& st);
122 std::string
class_name()
const override {
return "CplexInterface";}
131 void init(
const Dict& opts)
override;
137 int init_mem(
void* mem)
const override;
143 int solve(
const double** arg,
double** res,
144 casadi_int* iw,
double* w,
void* mem)
const override;
153 Dict get_stats(
void* mem)
const override;
bool psd_support() const override
Can psd constraints be treated.
static const Options options_
Options.
void * alloc_mem() const override
Create memory block.
std::vector< double > sos_weights_
SDPToSOCPMem sdp_to_socp_mem_
SDP to SOCP conversion memory.
std::vector< char > sos_types_
void free_mem(void *mem) const override
Free memory block.
std::vector< casadi_int > sos_beg_
static ProtoFunction * deserialize(DeserializingStream &s)
Deserialize with type disambiguation.
static const std::string meta_doc
A documentation string.
static Conic * creator(const std::string &name, const std::map< std::string, Sparsity > &st)
Create a new QP Solver.
std::string dump_filename_
std::vector< int > sos_ind_
const char * plugin_name() const override
const Options & get_options() const override
Options.
bool integer_support() const override
Can discrete variables be treated.
std::vector< char > ctype_
std::string class_name() const override
Readable name of the internal class.
Dict opts_
All CPLEX options.
Helper class for Serialization.
Base class for FunctionInternal and LinsolInternal.
Helper class for Serialization.
GenericType::Dict Dict
C++ equivalent of Python's dict or MATLAB's struct.
SDP to SOCP conversion memory.
std::vector< CPXDIM > socp_lind
casadi_int objsen
Nature of problem (always minimization)
std::vector< char > sense
Determines relation >,<, = in the linear constraints.
std::vector< CPXDIM > a_row
std::vector< int > rstat
Storage for basis info of slack variables.
std::vector< double > rhs
Right-hand side of constraints.
bool is_warm
Indicates if we have to warm-start.
std::vector< int > matcnt
Coefficients of matrix A (constraint Jacobian)
std::vector< CPXNNZ > socp_colind
CPXENVptr env
CPLEX environment.
std::vector< double > rngval
Range of constraints.
std::vector< int > cstat
Storage for basis info of primal variables.
std::vector< double > socp_lbound
std::vector< CPXNNZ > a_colind
std::vector< int > qmatcnt
Coefficients of matrix H (objective Hessian)
Options metadata for a class.