25 #ifndef CASADI_XPRESS_INTERFACE_HPP
26 #define CASADI_XPRESS_INTERFACE_HPP
30 #include "casadi/core/conic_impl.hpp"
31 #include <casadi/interfaces/xpress/casadi_conic_xpress_export.h>
36 #include "xpress_runtime.hpp"
61 bool iis_valid =
false;
76 const std::map<std::string, Sparsity>& st) {
82 const std::map<std::string, Sparsity>& st);
91 std::string
class_name()
const override {
return "XpressInterface";}
99 void set_xpress_prob();
118 void init(
const Dict& opts)
override;
121 void init_dependent();
127 int init_mem(
void* mem)
const override;
130 void free_mem(
void *mem)
const override;
133 void set_work(
void* mem,
const double**& arg,
double**& res,
134 casadi_int*& iw,
double*& w)
const override;
137 Dict get_stats(
void* mem)
const override;
140 int solve(
const double** arg,
double** res,
141 casadi_int* iw,
double* w,
void* mem)
const override;
179 std::vector<int> colinda_, rowa_;
189 std::vector<int> qobj_col1_, qobj_col2_;
190 std::vector<int> qobj_nz_idx_;
194 std::vector<char> coltype_;
199 std::vector<char> sos_settype_;
200 std::vector<int> sos_setstart_, sos_setind_;
201 std::vector<double> sos_refval_;
208 std::vector<casadi_int> socp_r_;
209 std::vector<casadi_int> socp_mq_colind_, socp_mq_row_, socp_mq_data_;
210 std::vector<casadi_int> socp_map_P_;
213 void build_socp_config();
Helper class for C code generation.
Helper class for Serialization.
Base class for FunctionInternal and LinsolInternal.
Helper class for Serialization.
'xpress' plugin for Conic
bool psd_support() const override
SOCP / PSD-formulated cone constraint support.
const Options & get_options() const override
Options.
void * alloc_mem() const override
Create memory block.
static ProtoFunction * deserialize(DeserializingStream &s)
Deserialize with type disambiguation.
static Conic * creator(const std::string &name, const std::map< std::string, Sparsity > &st)
Create a new QP Solver.
const char * plugin_name() const override
std::string codegen_mem_type() const override
Thread-local memory object type.
bool integer_support() const override
Can discrete variables be treated.
static const std::string meta_doc
A documentation string.
std::string class_name() const override
Readable name of the internal class.
static const Options options_
Options.
bool codegen_needs_mem() const override
Is thread-local memory object needed?
Dict opts_
All Xpress options.
GenericType::Dict Dict
C++ equivalent of Python's dict or MATLAB's struct.
Options metadata for a class.
std::string iis_col_bound_types
std::vector< casadi_int > iis_cols
casadi_xpress_data< double > d