26#ifndef OR_TOOLS_GSCIP_GSCIP_EXT_H_
27#define OR_TOOLS_GSCIP_GSCIP_EXT_H_
32#include "absl/status/status.h"
33#include "absl/strings/string_view.h"
36#include "scip/scip_prob.h"
37#include "scip/type_cons.h"
38#include "scip/type_scip.h"
39#include "scip/type_var.h"
46 absl::string_view
name =
"");
51 absl::flat_hash_map<SCIP_VAR*, double>
terms;
73 const std::vector<GScipLinearExpr>& terms,
74 absl::string_view
name =
"");
79 const std::vector<GScipLinearExpr>& terms,
80 absl::string_view
name =
"");
93 absl::string_view
name =
"",
94 const GScipConstraintOptions& options = GScipConstraintOptions());
103 GScip* gscip, std::vector<SCIP_Var*> quadratic_variables1,
104 std::vector<SCIP_Var*> quadratic_variables2,
105 std::vector<double> quadratic_coefficients, absl::string_view
name =
"");
const std::string name
A name for logging purposes.
In SWIG mode, we don't want anything besides these top-level includes.
GScipLinearExpr GScipDifference(GScipLinearExpr left, const GScipLinearExpr &right)
Returns left - right.
absl::Status GScipCreateMinimum(GScip *gscip, const GScipLinearExpr &resultant, const std::vector< GScipLinearExpr > &terms, absl::string_view name)
GScipLinearExpr GScipNegate(GScipLinearExpr expr)
Returns -expr.
GScipLinearRange GScipLe(const GScipLinearExpr left, const GScipLinearExpr &right)
absl::Status GScipCreateAbs(GScip *gscip, SCIP_Var *x, SCIP_Var *abs_x, absl::string_view name)
absl::Status GScipCreateMaximum(GScip *gscip, const GScipLinearExpr &resultant, const std::vector< GScipLinearExpr > &terms, absl::string_view name)
absl::Status GScipCreateIndicatorRange(GScip *gscip, const GScipIndicatorRangeConstraint &indicator_range, absl::string_view name, const GScipConstraintOptions &options)
Supports unbounded variables in indicator_range.range.variables.
absl::Status GScipAddQuadraticObjectiveTerm(GScip *gscip, std::vector< SCIP_Var * > quadratic_variables1, std::vector< SCIP_Var * > quadratic_variables2, std::vector< double > quadratic_coefficients, absl::string_view name)
SCIP_VAR * indicator_variable
absl::flat_hash_map< SCIP_VAR *, double > terms
GScipLinearExpr()=default