|
|
XpressProblem () |
|
Create a problem without internal name.
|
|
|
XpressProblem (std::optional< std::string > problemName) |
|
Create a problem with internal name.
|
|
|
XpressProblem (std::optional< std::string > problemName, std::optional< std::string > licensePath) |
|
Create a problem with internal name and non-default license.
|
|
template<typename C > |
auto |
addConstraint (ConstraintDefinition< C > def) -> C |
|
Add a single constraint to this problem.
|
|
template<typename I , typename T = typename std::iterator_traits<I>::value_type, typename Func0 , typename C = typename std::invoke_result<Func0,T>::type::constraint_type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,T>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (I dataBegin, I dataEnd, Func0 defs) -> xpress::Iterable< std::pair< T, C > > |
|
Add multiple constraints of the same type to the problem.
|
|
template<typename Func0 , typename C = typename std::invoke_result<Func0, int>::type::constraint_type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,int>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (int count, Func0 defs) -> xpress::Iterable< C > |
|
Add multiple constraints of the same type to the problem.
|
|
template<typename Func0 , typename C = typename std::invoke_result<Func0,int ,int>::type::constraint_type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,int,int>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (int count1, int count2, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Func0 , typename C = typename std::invoke_result<Func0,int ,int ,int>::type::constraint_type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,int,int,int>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (int count1, int count2, int count3, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Func0 , typename C = typename std::invoke_result<Func0,int ,int ,int ,int>::type::constraint_type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,int,int,int,int>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (int count1, int count2, int count3, int count4, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Func0 , typename C = typename std::invoke_result<Func0,int ,int ,int ,int ,int>::type::constraint_type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,int,int,int,int,int>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (int count1, int count2, int count3, int count4, int count5, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Iter0 , typename Iter1 , typename K1 = typename Iter0::value_type, typename K2 = typename Iter1::value_type, typename Func0 , typename C = typename std::invoke_result<Func0,K1 ,K2>::type::constraint_type, typename Iter0IsIterable = typename std::enable_if<xpress::is_iterable<Iter0>::value>::type, typename Iter1IsIterable = typename std::enable_if<xpress::is_iterable<Iter1>::value>::type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,K1,K2>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (Iter0 const &iterable1, Iter1 const &iterable2, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Iter0 , typename Iter1 , typename Iter2 , typename K1 = typename Iter0::value_type, typename K2 = typename Iter1::value_type, typename K3 = typename Iter2::value_type, typename Func0 , typename C = typename std::invoke_result<Func0,K1 ,K2 ,K3>::type::constraint_type, typename Iter0IsIterable = typename std::enable_if<xpress::is_iterable<Iter0>::value>::type, typename Iter1IsIterable = typename std::enable_if<xpress::is_iterable<Iter1>::value>::type, typename Iter2IsIterable = typename std::enable_if<xpress::is_iterable<Iter2>::value>::type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,K1,K2,K3>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (Iter0 const &iterable1, Iter1 const &iterable2, Iter2 const &iterable3, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Iter0 , typename Iter1 , typename Iter2 , typename Iter3 , typename K1 = typename Iter0::value_type, typename K2 = typename Iter1::value_type, typename K3 = typename Iter2::value_type, typename K4 = typename Iter3::value_type, typename Func0 , typename C = typename std::invoke_result<Func0,K1 ,K2 ,K3 ,K4>::type::constraint_type, typename Iter0IsIterable = typename std::enable_if<xpress::is_iterable<Iter0>::value>::type, typename Iter1IsIterable = typename std::enable_if<xpress::is_iterable<Iter1>::value>::type, typename Iter2IsIterable = typename std::enable_if<xpress::is_iterable<Iter2>::value>::type, typename Iter3IsIterable = typename std::enable_if<xpress::is_iterable<Iter3>::value>::type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,K1,K2,K3,K4>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (Iter0 const &iterable1, Iter1 const &iterable2, Iter2 const &iterable3, Iter3 const &iterable4, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Iter0 , typename Iter1 , typename Iter2 , typename Iter3 , typename Iter4 , typename K1 = typename Iter0::value_type, typename K2 = typename Iter1::value_type, typename K3 = typename Iter2::value_type, typename K4 = typename Iter3::value_type, typename K5 = typename Iter4::value_type, typename Func0 , typename C = typename std::invoke_result<Func0,K1 ,K2 ,K3 ,K4 ,K5>::type::constraint_type, typename Iter0IsIterable = typename std::enable_if<xpress::is_iterable<Iter0>::value>::type, typename Iter1IsIterable = typename std::enable_if<xpress::is_iterable<Iter1>::value>::type, typename Iter2IsIterable = typename std::enable_if<xpress::is_iterable<Iter2>::value>::type, typename Iter3IsIterable = typename std::enable_if<xpress::is_iterable<Iter3>::value>::type, typename Iter4IsIterable = typename std::enable_if<xpress::is_iterable<Iter4>::value>::type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,K1,K2,K3,K4,K5>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (Iter0 const &iterable1, Iter1 const &iterable2, Iter2 const &iterable3, Iter3 const &iterable4, Iter4 const &iterable5, Func0 makeConstraint) -> void |
|
Add multiple constraints to this problem.
|
|
template<typename Strm0 , typename T = typename Strm0::value_type, typename Func0 , typename C = typename std::invoke_result<Func0,T>::type::constraint_type, typename Strm0IsStream = typename std::enable_if<xpress::is_stream<Strm0>::value>::type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,T const &>::type,ConstraintDefinition<C>>::value>::type> |
auto |
addConstraints (Strm0 const &data, Func0 defs) -> xpress::Iterable< C > |
|
Add multiple constraints of the same type to the problem.
|
|
template<typename Strm0 , typename C = typename Strm0::value_type::constraint_type, typename Strm0IsStream = typename std::enable_if<xpress::is_stream<Strm0>::value>::type> |
auto |
addConstraints (Strm0 const &defs) -> xpress::Iterable< C > |
|
Add multiple constraints of the same type to the problem.
|
|
auto |
addCut (int cuttype, InequalityDefinition cut) -> int |
|
Add a cut at the current node.
|
|
void |
addMipSol (int length, Array< double const > const &solval, Array< int const > const &colind, std::optional< std::string > const &name) |
|
Adds a new feasible, infeasible or partial MIP solution for the problem to the Optimizer.
|
|
auto |
addMipSol (xpress::SizedArray< double const > const &val, xpress::SizedArray< int const > const &ind) -> void |
|
Add a MIP solution.
|
|
auto |
addMipSol (xpress::SizedArray< double const > const &val, xpress::SizedArray< int const > const &ind, std::optional< std::string > name) -> void |
|
Add a MIP solution.
|
|
auto |
addMipSol (xpress::SizedArray< double const > const &values, xpress::SizedArray< Variable const > const &variables, std::optional< std::string > name) -> void |
|
Adds a feasible, infeasible or partial MIP solution for the problem to the Optimizer.
|
|
auto |
addObjective (xpress::objects::Expression obj, int priority, double weight) -> void |
|
Add a objective function.
|
|
auto |
addVariable () -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
auto |
addVariable (ColumnType type) -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
auto |
addVariable (ColumnType type, std::optional< std::string > name) -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
auto |
addVariable (double lb, double ub, ColumnType type) -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
auto |
addVariable (double lb, double ub, ColumnType type, double limit, std::optional< std::string > name) -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
auto |
addVariable (double lb, double ub, ColumnType type, std::optional< std::string > name) -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
auto |
addVariable (std::optional< std::string > name) -> xpress::objects::Variable |
|
Add a single variable to this problem.
|
|
template<typename Coll0 , typename K1 = typename Coll0::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
addVariables (Coll0 const &coll1) -> xpress::VariableBuilder::VariableMapBuilder< K1 > |
|
Create an 1-dimensional map of variables.
|
|
template<typename Coll0 , typename Coll1 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type> |
auto |
addVariables (Coll0 const &coll1, Coll1 const &coll2) -> xpress::VariableBuilder::VariableMap2Builder< K1, K2 > |
|
Create an 2-dimensional map of variables.
|
|
template<typename Coll0 , typename Coll1 , typename Coll2 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename K3 = typename Coll2::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type, typename Coll2IsCollection = typename std::enable_if<xpress::is_collection<Coll2>::value>::type> |
auto |
addVariables (Coll0 const &coll1, Coll1 const &coll2, Coll2 const &coll3) -> xpress::VariableBuilder::VariableMap3Builder< K1, K2, K3 > |
|
Create an 3-dimensional map of variables.
|
|
template<typename Coll0 , typename Coll1 , typename Coll2 , typename Coll3 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename K3 = typename Coll2::value_type, typename K4 = typename Coll3::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type, typename Coll2IsCollection = typename std::enable_if<xpress::is_collection<Coll2>::value>::type, typename Coll3IsCollection = typename std::enable_if<xpress::is_collection<Coll3>::value>::type> |
auto |
addVariables (Coll0 const &coll1, Coll1 const &coll2, Coll2 const &coll3, Coll3 const &coll4) -> xpress::VariableBuilder::VariableMap4Builder< K1, K2, K3, K4 > |
|
Create an 4-dimensional map of variables.
|
|
template<typename Coll0 , typename Coll1 , typename Coll2 , typename Coll3 , typename Coll4 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename K3 = typename Coll2::value_type, typename K4 = typename Coll3::value_type, typename K5 = typename Coll4::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type, typename Coll2IsCollection = typename std::enable_if<xpress::is_collection<Coll2>::value>::type, typename Coll3IsCollection = typename std::enable_if<xpress::is_collection<Coll3>::value>::type, typename Coll4IsCollection = typename std::enable_if<xpress::is_collection<Coll4>::value>::type> |
auto |
addVariables (Coll0 const &coll1, Coll1 const &coll2, Coll2 const &coll3, Coll3 const &coll4, Coll4 const &coll5) -> xpress::VariableBuilder::VariableMap5Builder< K1, K2, K3, K4, K5 > |
|
Create an 5-dimensional map of variables.
|
|
auto |
addVariables (int dim) -> xpress::VariableBuilder::VariableArrayBuilder |
|
Create an 1-dimensional array of variables.
|
|
auto |
addVariables (int dim1, int dim2) -> xpress::VariableBuilder::VariableArray2Builder |
|
Create an 2-dimensional array of variables.
|
|
auto |
addVariables (int dim1, int dim2, int dim3) -> xpress::VariableBuilder::VariableArray3Builder |
|
Create an 3-dimensional array of variables.
|
|
auto |
addVariables (int dim1, int dim2, int dim3, int dim4) -> xpress::VariableBuilder::VariableArray4Builder |
|
Create an 4-dimensional array of variables.
|
|
auto |
addVariables (int dim1, int dim2, int dim3, int dim4, int dim5) -> xpress::VariableBuilder::VariableArray5Builder |
|
Create an 5-dimensional array of variables.
|
|
auto |
bndSA (int len, xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double > const &lblower, xpress::SizedArray< double > const &lbupper, xpress::SizedArray< double > const &ublower, xpress::SizedArray< double > const &ubupper) -> void |
|
Returns upper and lower sensitivity ranges for specified variables' lower and upper bounds.
|
|
void |
bndSA (int ncols, Array< int const > const &colind, Array< double > const &lblower, Array< double > const &lbupper, Array< double > const &ublower, Array< double > const &ubupper) |
|
Returns upper and lower sensitivity ranges for specified variables' lower and upper bounds.
|
|
auto |
bndSA (xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double > const &lblower, xpress::SizedArray< double > const &lbupper, xpress::SizedArray< double > const &ublower, xpress::SizedArray< double > const &ubupper) -> void |
|
Returns upper and lower sensitivity ranges for specified variables' lower and upper bounds.
|
|
auto |
chgBounds (int j, double lb, double ub) -> void |
|
Change bounds of a single column.
|
|
void |
chgBounds (int nbounds, Array< int const > const &colind, Array< char const > const &bndtype, Array< double const > const &bndval) |
|
Used to change the bounds on columns in the matrix.
|
|
auto |
chgBounds (xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< char const > const &bndType, xpress::SizedArray< double const > const &bndValue) -> void |
|
Change bounds for multiple variables.
|
|
auto |
chgCoef (Inequality row, Variable variable, double coefficient) -> xpress::objects::XpressProblem & |
|
Changes the coefficient for variable in row in the linear matrix.
|
|
void |
chgCoef (int row, int col, double coef) |
|
Used to change a single coefficient in the matrix.
|
|
auto |
chgCoefs (xpress::SizedArray< Inequality const > const &row, xpress::SizedArray< Variable const > const &variable, xpress::SizedArray< double const > const &coefficient) -> xpress::objects::XpressProblem & |
|
Change coefficients in the linear matrix.
|
|
void |
chgColType (int ncols, Array< int const > const &colind, Array< char const > const &coltype) |
|
Used to change the type of a specified set of columns in the matrix.
|
|
auto |
chgColType (xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< ColumnType const > const &colType) -> void |
|
Change types for multiple variables.
|
|
void |
chgObj (int ncols, Array< int const > const &colind, Array< double const > const &objcoef) |
|
Used to change the objective function coefficients.
|
|
auto |
chgObj (Variable variable, double coefficient) -> xpress::objects::XpressProblem & |
|
Change objective function coefficient.
|
|
auto |
chgObj (xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double const > const &coefficients) -> xpress::objects::XpressProblem & |
|
Change objective function coefficients.
|
|
void |
chgObjN (int objidx, int ncols, Array< int const > const &colind, Array< double const > const &objcoef) |
|
Modifies one or more coefficients of an objective function in a multi-objective problem.
|
|
auto |
chgObjN (int objidx, Variable variable, double coefficient) -> xpress::objects::XpressProblem & |
|
Change an objective function coefficient for a multi-objective problem.
|
|
auto |
chgObjN (int objidx, xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double const > const &coefficients) -> xpress::objects::XpressProblem & |
|
Change objective function coefficients for a multi-objective problem.
|
|
void |
chgRhs (int nrows, Array< int const > const &rowind, Array< double const > const &rhs) |
|
Used to change right—hand side values of the problem.
|
|
auto |
chgRhs (xpress::SizedArray< Inequality const > const &rows, xpress::SizedArray< double const > const &newRHS) -> void |
|
Change right-hand side for multiple rows.
|
|
void |
chgRhsRange (int nrows, Array< int const > const &rowind, Array< double const > const &rng) |
|
Used to change the range for a row of the problem matrix.
|
|
auto |
chgRhsRange (xpress::SizedArray< Inequality const > const &rows, xpress::SizedArray< double const > const &newRange) -> void |
|
Change right-hand side ranges for multiple rows.
|
|
void |
chgRowType (int nrows, Array< int const > const &rowind, Array< char const > const &rowtype) |
|
Used to change the type of a row in the matrix.
|
|
auto |
chgRowType (xpress::SizedArray< Inequality const > const &rows, xpress::SizedArray< RowType const > const &rowType) -> void |
|
Change types for multiple rows.
|
|
auto |
createBranchObject () -> xpress::objects::XpressProblem::BranchObject * |
|
Create a branch object.
|
|
virtual auto |
delCols (int ncols, xpress::Array< int const > const &colind) -> void override |
|
Delete columns from this problem.
|
|
virtual auto |
delGenCons (int nconstraints, xpress::Array< int const > const &conind) -> void override |
|
Delete constraints from this problem.
|
|
auto |
delGeneralConstraints (xpress::SizedArray< GeneralConstraint const > const &constraints) -> void |
|
Delete general constraints from this problem.
|
|
auto |
delIndicator (Inequality row) -> void |
|
Delete a single indicator constraint.
|
|
auto |
delInequalities (xpress::SizedArray< Inequality const > const &rows) -> void |
|
Delete inequality constraints from this problem.
|
|
virtual auto |
delPwlCons (int npwls, xpress::Array< int const > const &pwlind) -> void override |
|
Delete piecewise linear constraints from this problem.
|
|
auto |
delPwlConstraints (xpress::SizedArray< PWL const > const &pwls) -> void |
|
Delete PWL constraints from this problem.
|
|
virtual auto |
delRows (int nrows, xpress::Array< int const > const &rowind) -> void override |
|
Delete rows from this problem.
|
|
virtual auto |
delSets (int nsets, xpress::Array< int const > const &sosind) -> void override |
|
Delete sets from this problem.
|
|
auto |
delSOS (SOS sos) -> void |
|
Delete a single SOS from the problem.
|
|
auto |
delSOS (xpress::SizedArray< SOS const > const &soss) -> void |
|
Delete special ordered set constraints.
|
|
auto |
delVariables (xpress::SizedArray< Variable const > const &vars) -> void |
|
Delete variables from this problem.
|
|
auto |
generalConstraintForIndex (int index) const -> xpress::objects::GeneralConstraint |
|
Map a general constraint index to a GeneralConstraint object.
|
|
auto |
generalConstraintForIndices (int first, int last) const -> std::vector< xpress::objects::GeneralConstraint > |
|
Map a range of general constraint indices to GeneralConstraint objects.
|
|
auto |
getCallbackDual (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackDual (Inequality r) -> double |
|
Get the dual associated with the current callback for a single row.
|
|
auto |
getCallbackDual (int index) const -> double |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackDuals () const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackDuals (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackDuals (bool *p_available, Array< double > const &duals, int first, int last) const |
|
Returns the dual values from the solution associated with the current callback.
|
|
auto |
getCallbackDuals (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getCallbackDuals (Coll0 const &rows) -> std::vector< double > |
|
Get the duals associated with the current callback for a collection of rows.
|
|
auto |
getCallbackDuals (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackRedCost (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackRedCost (int index) const -> double |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackRedCost (Variable v) -> double |
|
Get the reduced cost associated with the current callbackfor a single variable.
|
|
auto |
getCallbackRedCosts () const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackRedCosts (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackRedCosts (bool *p_available, Array< double > const &djs, int first, int last) const |
|
Returns the reduced costs from the solution associated with the current callback.
|
|
auto |
getCallbackRedCosts (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getCallbackRedCosts (Coll0 const &vars) -> std::vector< double > |
|
Get the reduced costs associated with the current callback for a collection of variables.
|
|
auto |
getCallbackRedCosts (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSlack (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackSlack (Inequality r) -> double |
|
Get the slack associated with the current callback for a single row.
|
|
auto |
getCallbackSlack (int index) const -> double |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackSlacks () const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackSlacks (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackSlacks (bool *p_available, Array< double > const &slacks, int first, int last) const |
|
Returns the slack values from the solution associated with the current callback.
|
|
auto |
getCallbackSlacks (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getCallbackSlacks (Coll0 const &rows) -> std::vector< double > |
|
Get the slacks associated with the current callback for a collection of rows.
|
|
auto |
getCallbackSlacks (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSolution () const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackSolution (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackSolution (bool *p_available, Array< double > const &x, int first, int last) const |
|
Returns the solution associated with the current callback.
|
|
auto |
getCallbackSolution (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSolution (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getCallbackSolution (Coll0 const &vars) -> std::vector< double > |
|
Get the solution associated with the current callback for a collection of variables.
|
|
auto |
getCallbackSolution (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSolution (int index) const -> double |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackSolution (Variable v) -> double |
|
Get the solution associated with the current callback for a single variable.
|
|
auto |
getCoef (Inequality row, Variable variable) -> double |
|
Query a single coefficient from the linear matrix.
|
|
auto |
getCoef (int row, int col) -> double |
|
Returns a single coefficient in the constraint matrix.
|
|
auto |
getDual (Inequality r) -> double |
|
Get the dual for a single row.
|
|
auto |
getDual (int *status, int index) const -> double |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getDual (int index) const -> double |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getDuals () const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getDuals (Coll0 const &rows) -> std::vector< double > |
|
Get the duals for a collection of rows.
|
|
auto |
getDuals (int *status) const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getDuals (int *status, Array< double > const &duals, int first, int last) const |
|
Used to obtain the dual values associated with the incumbent solution during or after optimization of a continuous problem with XPRSoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getDuals (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getDuals (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getGeneralConstraints () -> std::vector< xpress::objects::GeneralConstraint > |
|
Get all the general constraints currently defined in this problem.
|
|
auto |
getIIS (int iis) -> xpress::objects::IIS |
|
Get the specified IIS.
|
|
auto |
getIndicator (Inequality row) -> std::optional< xpress::objects::IndicatorObjects > |
|
Get indicator information for a single row.
|
|
auto |
getInequalities () -> std::vector< xpress::objects::Inequality > |
|
Get all the inequalities currently defined in this problem.
|
|
auto |
getLhsExpression (int row) -> xpress::objects::Expression |
|
Get the left-hand side of a row as an expression.
|
|
auto |
getObj (int first, int last) -> std::vector< double > |
|
Returns the objective function coefficients for the columns in a given range.
|
|
auto |
getObj (Variable variable) -> double |
|
Query an objective function coefficient.
|
|
auto |
getObjN (int objidx, int first, int last) -> std::vector< double > |
|
For a given objective function, returns the objective coefficients for the columns in a given range.
|
|
auto |
getObjN (int objidx, Variable variable) -> double |
|
Query an objective function coefficient.
|
|
auto |
getPWLs () -> std::vector< xpress::objects::PWL > |
|
Get all piecewise linear constraints currently defined in this problem.
|
|
auto |
getRedCost (int *status, int index) const -> double |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getRedCost (int index) const -> double |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getRedCost (Variable v) -> double |
|
Get the reduced cost for a single variable.
|
|
auto |
getRedCosts () const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getRedCosts (Coll0 const &vars) -> std::vector< double > |
|
Get the reduced costs for a collection of variables.
|
|
auto |
getRedCosts (int *status) const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getRedCosts (int *status, Array< double > const &djs, int first, int last) const |
|
Used to obtain the reduced costs associated with the incumbent solution during or after optimization of a continuous problem with XPRSoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getRedCosts (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getRedCosts (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSlack (Inequality r) -> double |
|
Get the current slack for a single row.
|
|
auto |
getSlack (int *status, int index) const -> double |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSlack (int index) const -> double |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSlacks () const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getSlacks (Coll0 const &rows) -> std::vector< double > |
|
Get the current slacks for a collection of rows.
|
|
auto |
getSlacks (int *status) const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getSlacks (int *status, Array< double > const &slacks, int first, int last) const |
|
Used to obtain the slack values associated with the incumbent solution during or after optimization with XPRSoptimize , XPRSmipoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getSlacks (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSlacks (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSolution () const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
template<typename Coll0 , typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
getSolution (Coll0 const &vars) -> std::vector< double > |
|
Get the current solution for a collection of variables.
|
|
auto |
getSolution (int *status) const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getSolution (int *status, Array< double > const &x, int first, int last) const |
|
Used to obtain the incumbent solution during or after optimization with XPRSoptimize , XPRSmipoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getSolution (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSolution (int *status, int index) const -> double |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSolution (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSolution (int index) const -> double |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSolution (Variable v) -> double |
|
Get the current solution for a single variable.
|
|
auto |
getSOSs () -> std::vector< xpress::objects::SOS > |
|
Get all the special ordered set constraints currently defined in this problem.
|
|
auto |
getVariables () -> std::vector< xpress::objects::Variable > |
|
Get all the variables currently defined in this problem.
|
|
auto |
inequalitiesForIndices (int first, int last) const -> std::vector< xpress::objects::Inequality > |
|
Map a range of inequality indices to inequality objects.
|
|
auto |
inequalityForIndex (int index) const -> xpress::objects::Inequality |
|
Map an inequality index to an inequality object.
|
|
auto |
isOriginal () -> bool |
|
Check whether this model instance is in the original state.
|
|
void |
loadDelayedRows (int nrows, Array< int const > const &rowind) |
|
Specifies that a set of rows in the matrix will be treated as delayed rows during a tree search.
|
|
auto |
loadDelayedRows (xpress::SizedArray< Inequality const > const &rows) -> void |
|
Marks a set of rows as delayed rows.
|
|
void |
loadModelCuts (int nrows, Array< int const > const &rowind) |
|
Specifies that a set of rows in the matrix will be treated as model cuts.
|
|
auto |
loadModelCuts (xpress::SizedArray< Inequality const > const &rows) -> void |
|
Marks a set of rows as model cuts.
|
|
void |
nlpSetInitVal (int nvars, Array< int const > const &colind, Array< double const > const &initial) |
|
Set the initial value of a variable.
|
|
auto |
nlpSetInitVal (std::unordered_map< Variable, double > values) -> void |
|
Set initial values of variables for a non-linear solve.
|
|
auto |
nlpSetInitVal (xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double const > const &values) -> void |
|
Set initial values of variables for a non-linear solve.
|
|
auto |
objSA (int len, xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double > const &lower, xpress::SizedArray< double > const &upper) -> void |
|
Returns upper and lower sensitivity ranges for specified objective function coefficients.
|
|
void |
objSA (int ncols, Array< int const > const &colind, Array< double > const &lower, Array< double > const &upper) |
|
Returns upper and lower sensitivity ranges for specified objective function coefficients.
|
|
auto |
objSA (xpress::SizedArray< Variable const > const &variables, xpress::SizedArray< double > const &lower, xpress::SizedArray< double > const &upper) -> void |
|
Returns upper and lower sensitivity ranges for specified objective function coefficients.
|
|
auto |
pwlForIndex (int index) const -> xpress::objects::PWL |
|
Map a PWL index to a PWL object.
|
|
auto |
pwlsForIndices (int first, int last) const -> std::vector< xpress::objects::PWL > |
|
Map a range of PWL indices to PWL objects.
|
|
auto |
repairWeightedInfeas (Array< double const > const &lepref, Array< double const > const &gepref, Array< double const > const &lbpref, Array< double const > const &ubpref, char phase2, double delta, std::optional< std::string > const &flags) -> int |
|
By relaxing a set of selected constraints and bounds of an infeasible problem, it attempts to identify a 'solution' that violates the selected set of constraints and bounds minimally, while satisfying all other constraints and bounds.
|
|
template<typename IMap , typename VMap > |
auto |
repairWeightedInfeas (VMap const &lepref, VMap const &gepref, IMap const &lbpref, IMap const &ubpref, char phase2, double delta, std::optional< std::string > flags) -> int |
|
Repair infeasibilities using weights.
|
|
auto |
rhsSA (int len, xpress::SizedArray< Inequality const > const &rows, xpress::SizedArray< double > const &lower, xpress::SizedArray< double > const &upper) -> void |
|
Returns upper and lower sensitivity ranges for specified right hand side (RHS) function coefficients.
|
|
void |
rhsSA (int nrows, Array< int const > const &rowind, Array< double > const &lower, Array< double > const &upper) |
|
Returns upper and lower sensitivity ranges for specified right hand side (RHS) function coefficients.
|
|
auto |
rhsSA (xpress::SizedArray< Inequality const > const &rows, xpress::SizedArray< double > const &lower, xpress::SizedArray< double > const &upper) -> void |
|
Returns upper and lower sensitivity ranges for specified right hand side (RHS) function coefficients.
|
|
auto |
setIndicator (Variable indicatorVariable, bool indicatorValue, Inequality row) -> void |
|
Add an indicator constraint to this model.
|
|
template<typename Func0 , typename Func1 , typename Func2 , typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,int>::type,Variable>::value>::type, typename Func1Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func1,int>::type,bool>::value>::type, typename Func2Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func2,int>::type,Inequality>::value>::type> |
auto |
setIndicators (int count, Func0 indicatorVariable, Func1 indicatorValue, Func2 row) -> void |
|
Add indicator constraints to this model.
|
|
void |
setIndicators (int nrows, Array< int const > const &rowind, Array< int const > const &colind, Array< int const > const &complement) |
|
Specifies that a set of rows in the matrix will be treated as indicator constraints during a tree search.
|
|
template<typename Iter0 , typename T = typename Iter0::value_type, typename Func0 , typename Func1 , typename Func2 , typename Iter0IsIterable = typename std::enable_if<xpress::is_iterable<Iter0>::value>::type, typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,T>::type,Variable>::value>::type, typename Func1Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func1,T>::type,bool>::value>::type, typename Func2Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func2,T>::type,Inequality>::value>::type> |
auto |
setIndicators (Iter0 const &data, Func0 indicatorVariable, Func1 indicatorValue, Func2 row) -> void |
|
Add indicator constraints to this model.
|
|
template<typename T , typename Func0 , typename Func1 , typename Func2 , typename Func0Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func0,T>::type,Variable>::value>::type, typename Func1Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func1,T>::type,bool>::value>::type, typename Func2Invocable = typename std::enable_if<std::is_convertible<typename std::invoke_result<Func2,T>::type,Inequality>::value>::type> |
auto |
setIndicators (xpress::SizedArray< T const > const &data, Func0 indicatorVariable, Func1 indicatorValue, Func2 row) -> void |
|
Add indicator constraints to this model.
|
|
auto |
setIndicators (xpress::SizedArray< Variable const > const &indicatorVariable, std::vector< bool > const &indicatorValue, xpress::SizedArray< Inequality const > const &row) -> void |
|
Add indicator constraints to this model.
|
|
auto |
setObjective (int idx, xpress::objects::Expression obj, int priority, double weight, double abstol, double reltol) -> void |
|
Set an objective function and its controls.
|
|
auto |
setObjective (xpress::objects::Expression obj) -> void |
|
Set the objective function to a expression.
|
|
auto |
setObjective (xpress::objects::Expression obj, xpress::ObjSense sense) -> void |
|
Set the objective function to a expression.
|
|
void |
slpSetDetRow (int nvars, Array< int const > const &colind, Array< int const > const &rowind) |
|
Set the determining row of a variable.
|
|
auto |
slpSetDetRow (Variable v, Inequality i) -> void |
|
Set the determining row of a variable.
|
|
auto |
sosForIndex (int index) const -> xpress::objects::SOS |
|
Map an SOS index to an SOS object.
|
|
auto |
sosForIndices (int first, int last) const -> std::vector< xpress::objects::SOS > |
|
Map a range of SOS indices to SOS objects.
|
|
auto |
variableForIndex (int index) const -> xpress::objects::Variable |
|
Map a variable index to a variable object.
|
|
auto |
variablesForIndices (int first, int last) const -> std::vector< xpress::objects::Variable > |
|
Map a range of variable indices to variable objects.
|
|
|
XPRSProblem (bool) |
|
Create a new instance without allocating a license.
|
|
|
XPRSProblem (char const *name=nullptr, char const *licpath=nullptr) |
|
Create a new instance with name and allocating a license.
|
|
auto |
addAfterObjectiveCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add an afterobjective callback.
|
|
auto |
addBarIterationCallback (std::function< void(XPRSProblem &, int *)> callback, int prio=0) -> CallbackHandle |
|
Add a bariteration callback.
|
|
auto |
addBarlogCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a barlog callback.
|
|
auto |
addBeforeObjectiveCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a beforeobjective callback.
|
|
auto |
addBeforeSolveCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a beforesolve callback.
|
|
auto |
addChangeBranchObjectCallback (std::function< void(XPRSProblem &, BranchObject *, BranchObject **)> callback, int prio=0) -> CallbackHandle |
|
Add a changebranchobject callback.
|
|
auto |
addCheckTimeCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a checktime callback.
|
|
void |
addCols (int ncols, int ncoefs, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub) |
|
Adds columns to the optimizer matrix.
|
|
void |
addCols (int ncols, XPRSint64 ncoefs, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub) |
|
Adds columns to the optimizer matrix.
|
|
auto |
addColumn (double lb, double ub, ColumnType type, std::optional< std::string > name) -> int |
|
Add a single column to this problem.
|
|
template<typename Coll0 , typename K1 = typename Coll0::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type> |
auto |
addColumns (Coll0 const &coll1) -> VariableBuilder::ColumnMapBuilder< K1 > |
|
Create an 1-dimensional map of columns.
|
|
template<typename Coll0 , typename Coll1 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type> |
auto |
addColumns (Coll0 const &coll1, Coll1 const &coll2) -> VariableBuilder::ColumnMap2Builder< K1, K2 > |
|
Create an 2-dimensional map of columns.
|
|
template<typename Coll0 , typename Coll1 , typename Coll2 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename K3 = typename Coll2::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type, typename Coll2IsCollection = typename std::enable_if<xpress::is_collection<Coll2>::value>::type> |
auto |
addColumns (Coll0 const &coll1, Coll1 const &coll2, Coll2 const &coll3) -> VariableBuilder::ColumnMap3Builder< K1, K2, K3 > |
|
Create an 3-dimensional map of columns.
|
|
template<typename Coll0 , typename Coll1 , typename Coll2 , typename Coll3 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename K3 = typename Coll2::value_type, typename K4 = typename Coll3::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type, typename Coll2IsCollection = typename std::enable_if<xpress::is_collection<Coll2>::value>::type, typename Coll3IsCollection = typename std::enable_if<xpress::is_collection<Coll3>::value>::type> |
auto |
addColumns (Coll0 const &coll1, Coll1 const &coll2, Coll2 const &coll3, Coll3 const &coll4) -> VariableBuilder::ColumnMap4Builder< K1, K2, K3, K4 > |
|
Create an 4-dimensional map of columns.
|
|
template<typename Coll0 , typename Coll1 , typename Coll2 , typename Coll3 , typename Coll4 , typename K1 = typename Coll0::value_type, typename K2 = typename Coll1::value_type, typename K3 = typename Coll2::value_type, typename K4 = typename Coll3::value_type, typename K5 = typename Coll4::value_type, typename Coll0IsCollection = typename std::enable_if<xpress::is_collection<Coll0>::value>::type, typename Coll1IsCollection = typename std::enable_if<xpress::is_collection<Coll1>::value>::type, typename Coll2IsCollection = typename std::enable_if<xpress::is_collection<Coll2>::value>::type, typename Coll3IsCollection = typename std::enable_if<xpress::is_collection<Coll3>::value>::type, typename Coll4IsCollection = typename std::enable_if<xpress::is_collection<Coll4>::value>::type> |
auto |
addColumns (Coll0 const &coll1, Coll1 const &coll2, Coll2 const &coll3, Coll3 const &coll4, Coll4 const &coll5) -> VariableBuilder::ColumnMap5Builder< K1, K2, K3, K4, K5 > |
|
Create an 5-dimensional map of columns.
|
|
auto |
addColumns (int dim) -> VariableBuilder::ColumnArrayBuilder |
|
Create an 1-dimensional array of columns.
|
|
auto |
addColumns (int dim1, int dim2) -> VariableBuilder::ColumnArray2Builder |
|
Create an 2-dimensional array of columns.
|
|
auto |
addColumns (int dim1, int dim2, int dim3) -> VariableBuilder::ColumnArray3Builder |
|
Create an 3-dimensional array of columns.
|
|
auto |
addColumns (int dim1, int dim2, int dim3, int dim4) -> VariableBuilder::ColumnArray4Builder |
|
Create an 4-dimensional array of columns.
|
|
auto |
addColumns (int dim1, int dim2, int dim3, int dim4, int dim5) -> VariableBuilder::ColumnArray5Builder |
|
Create an 5-dimensional array of columns.
|
|
template<typename K1 > |
auto |
addColumns (xpress::SizedArray< K1 const > const &arr1) -> VariableBuilder::ColumnMapBuilder< K1 > |
|
Create an 1-dimensional map of columns.
|
|
template<typename K1 , typename K2 > |
auto |
addColumns (xpress::SizedArray< K1 const > const &arr1, xpress::SizedArray< K2 const > const &arr2) -> VariableBuilder::ColumnMap2Builder< K1, K2 > |
|
Create an 2-dimensional map of columns.
|
|
template<typename K1 , typename K2 , typename K3 > |
auto |
addColumns (xpress::SizedArray< K1 const > const &arr1, xpress::SizedArray< K2 const > const &arr2, xpress::SizedArray< K3 const > const &arr3) -> VariableBuilder::ColumnMap3Builder< K1, K2, K3 > |
|
Create an 3-dimensional map of columns.
|
|
template<typename K1 , typename K2 , typename K3 , typename K4 > |
auto |
addColumns (xpress::SizedArray< K1 const > const &arr1, xpress::SizedArray< K2 const > const &arr2, xpress::SizedArray< K3 const > const &arr3, xpress::SizedArray< K4 const > const &arr4) -> VariableBuilder::ColumnMap4Builder< K1, K2, K3, K4 > |
|
Create an 4-dimensional map of columns.
|
|
template<typename K1 , typename K2 , typename K3 , typename K4 , typename K5 > |
auto |
addColumns (xpress::SizedArray< K1 const > const &arr1, xpress::SizedArray< K2 const > const &arr2, xpress::SizedArray< K3 const > const &arr3, xpress::SizedArray< K4 const > const &arr4, xpress::SizedArray< K5 const > const &arr5) -> VariableBuilder::ColumnMap5Builder< K1, K2, K3, K4, K5 > |
|
Create an 5-dimensional map of columns.
|
|
auto |
addComputeRestartCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a computerestart callback.
|
|
auto |
addCut (int cuttype, RowInfo cut) -> void |
|
Add a single cut to the problem.
|
|
auto |
addCut (int cuttype, xpress::SizedArray< int const > const &colind, xpress::SizedArray< double const > const &colval, char rowtype, double rhs) -> void |
|
Add a single cut to the problem.
|
|
auto |
addCutlogCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a cutlog callback.
|
|
void |
addCuts (int ncuts, Array< int const > const &cuttype, Array< char const > const &rowtype, Array< double const > const &rhs, Array< int const > const &start, Array< int const > const &colind, Array< double const > const &cutcoef) |
|
Adds cuts directly to the matrix at the current node.
|
|
void |
addCuts (int ncuts, Array< int const > const &cuttype, Array< char const > const &rowtype, Array< double const > const &rhs, Array< XPRSint64 const > const &start, Array< int const > const &colind, Array< double const > const &cutcoef) |
|
Adds cuts directly to the matrix at the current node.
|
|
auto |
addGapNotifyCallback (std::function< void(XPRSProblem &, double *, double *, double *, double *)> callback, int prio=0) -> CallbackHandle |
|
Add a gapnotify callback.
|
|
void |
addGenCons (int ncons, int ncols, int nvals, Array< GenConsType const > const &contype, Array< int const > const &resultant, Array< int const > const &colstart, Array< int const > const &colind, Array< int const > const &valstart, Array< double const > const &val) |
|
Adds one or more general constraints to the problem.
|
|
void |
addGenCons (int ncons, XPRSint64 ncols, XPRSint64 nvals, Array< GenConsType const > const &contype, Array< int const > const &resultant, Array< XPRSint64 const > const &colstart, Array< int const > const &colind, Array< XPRSint64 const > const &valstart, Array< double const > const &val) |
|
Adds one or more general constraints to the problem.
|
|
auto |
addInfnodeCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add an infnode callback.
|
|
auto |
addIntsolCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add an intsol callback.
|
|
auto |
addLplogCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a lplog callback.
|
|
auto |
addMessageCallback (std::function< void(XPRSProblem &, char const *, int, int)> callback, int prio=0) -> CallbackHandle |
|
Add a message callback.
|
|
auto |
addMiplogCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a miplog callback.
|
|
void |
addMipSol (int length, Array< double const > const &solval, Array< int const > const &colind, std::optional< std::string > const &name) |
|
Adds a new feasible, infeasible or partial MIP solution for the problem to the Optimizer.
|
|
auto |
addMipSol (xpress::SizedArray< double const > const &val, xpress::SizedArray< int const > const &ind) -> void |
|
Add a MIP solution.
|
|
auto |
addMipSol (xpress::SizedArray< double const > const &val, xpress::SizedArray< int const > const &ind, std::optional< std::string > name) -> void |
|
Add a MIP solution.
|
|
auto |
addMipThreadCallback (std::function< void(XPRSProblem &, XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a mipthread callback.
|
|
auto |
addMipThreadDestroyCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a mipthreaddestroy callback.
|
|
auto |
addMsJobEndCallback (std::function< int(XPRSProblem &, void *, char const *, int *)> callback, int prio=0) -> CallbackHandle |
|
Add a msjobend callback.
|
|
auto |
addMsJobStartCallback (std::function< int(XPRSProblem &, void *, char const *, int *)> callback, int prio=0) -> CallbackHandle |
|
Add a msjobstart callback.
|
|
auto |
addMsWinnerCallback (std::function< int(XPRSProblem &, void *, char const *)> callback, int prio=0) -> CallbackHandle |
|
Add a mswinner callback.
|
|
void |
addNames (int type, Array< std::string const > const &names, int first, int last) |
|
When a model is loaded, the rows, columns, sets, piecewise linear and general constraints of the model may not have names associated with them.
|
|
auto |
addNames (xpress::Namespaces type, xpress::SizedArray< std::optional< std::string > const > const &names, int first, int last) -> void |
|
Add names to model.
|
|
auto |
addNewnodeCallback (std::function< void(XPRSProblem &, int, int, int)> callback, int prio=0) -> CallbackHandle |
|
Add a newnode callback.
|
|
auto |
addNlpCoefEvalErrorCallback (std::function< int(XPRSProblem &, int, int)> callback, int prio=0) -> CallbackHandle |
|
Add a nlpcoefevalerror callback.
|
|
auto |
addNodecutoffCallback (std::function< void(XPRSProblem &, int)> callback, int prio=0) -> CallbackHandle |
|
Add a nodecutoff callback.
|
|
auto |
addNodeLPSolvedCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a nodelpsolved callback.
|
|
void |
addObj (int ncols, Array< int const > const &colind, Array< double const > const &objcoef, int priority, double weight) |
|
Appends an objective function with the given coefficients to a multi-objective problem.
|
|
auto |
addOptnodeCallback (std::function< void(XPRSProblem &, int *)> callback, int prio=0) -> CallbackHandle |
|
Add an optnode callback.
|
|
auto |
addPreIntsolCallback (std::function< void(XPRSProblem &, int, int *, double *)> callback, int prio=0) -> CallbackHandle |
|
Add a preintsol callback.
|
|
auto |
addPrenodeCallback (std::function< void(XPRSProblem &, int *)> callback, int prio=0) -> CallbackHandle |
|
Add a prenode callback.
|
|
auto |
addPresolveCallback (std::function< void(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a presolve callback.
|
|
void |
addPwlCons (int npwls, int npoints, Array< int const > const &colind, Array< int const > const &resultant, Array< int const > const &start, Array< double const > const &xval, Array< double const > const &yval) |
|
Adds one or more piecewise linear constraints to the problem.
|
|
void |
addPwlCons (int npwls, XPRSint64 npoints, Array< int const > const &colind, Array< int const > const &resultant, Array< XPRSint64 const > const &start, Array< double const > const &xval, Array< double const > const &yval) |
|
Adds one or more piecewise linear constraints to the problem.
|
|
void |
addQMatrix (int row, int ncoefs, Array< int const > const &rowqcol1, Array< int const > const &rowqcol2, Array< double const > const &rowqcoef) |
|
Adds a new quadratic matrix into a row defined by triplets.
|
|
void |
addQMatrix (int row, XPRSint64 ncoefs, Array< int const > const &rowqcol1, Array< int const > const &rowqcol2, Array< double const > const &rowqcoef) |
|
Adds a new quadratic matrix into a row defined by triplets.
|
|
auto |
addRow (RowInfo row) -> int |
|
Add a single row to the problem.
|
|
auto |
addRow (RowInfo row, std::optional< std::string > name) -> int |
|
Add a single row to the problem.
|
|
auto |
addRow (xpress::SizedArray< int const > const &colind, xpress::SizedArray< double const > const &colval, char rowtype, double rhs) -> int |
|
Add a single row to the problem.
|
|
auto |
addRow (xpress::SizedArray< int const > const &colind, xpress::SizedArray< double const > const &colval, char rowtype, double rhs, double rng, std::optional< std::string > name) -> int |
|
Add a single row to the problem.
|
|
auto |
addRow (xpress::SizedArray< int const > const &colind, xpress::SizedArray< double const > const &colval, char rowtype, double rhs, std::optional< std::string > name) -> int |
|
Add a single row to the problem.
|
|
void |
addRows (int nrows, int ncoefs, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< int const > const &start, Array< int const > const &colind, Array< double const > const &rowcoef) |
|
Adds rows to the optimizer matrix.
|
|
void |
addRows (int nrows, int ncoefs, Array< char const > const &rowtype, Array< double const > const &rhs, Array< int const > const &start, Array< int const > const &colind, Array< double const > const &rowcoef) |
|
Adds rows to the optimizer matrix.
|
|
void |
addRows (int nrows, XPRSint64 ncoefs, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< XPRSint64 const > const &start, Array< int const > const &colind, Array< double const > const &rowcoef) |
|
Adds rows to the optimizer matrix.
|
|
void |
addRows (int nrows, XPRSint64 ncoefs, Array< char const > const &rowtype, Array< double const > const &rhs, Array< XPRSint64 const > const &start, Array< int const > const &colind, Array< double const > const &rowcoef) |
|
Adds rows to the optimizer matrix.
|
|
auto |
addSet (xpress::SetType type, xpress::SizedArray< int const > const &elements, xpress::SizedArray< double const > const &weights, std::optional< std::string > name) -> int |
|
Add a single set constraint to this problem.
|
|
void |
addSetNames (Array< std::string const > const &names, int first, int last) |
|
When a model with MIP entities is loaded, any special ordered sets may not have names associated with them.
|
|
auto |
addSets (int count, xpress::SizedArray< int const > const &start, xpress::SizedArray< SetType const > const &type, xpress::SizedArray< int const > const &setind, xpress::SizedArray< double const > const &setref, xpress::SizedArray< std::optional< std::string > const > const &names) -> std::vector< int > |
|
Create multiple set constraints.
|
|
void |
addSets (int nsets, int nelems, Array< char const > const &settype, Array< int const > const &start, Array< int const > const &colind, Array< double const > const &refval) |
|
Allows sets to be added to the problem after passing it to the Optimizer using the input routines.
|
|
void |
addSets (int nsets, XPRSint64 nelems, Array< char const > const &settype, Array< XPRSint64 const > const &start, Array< int const > const &colind, Array< double const > const &refval) |
|
Allows sets to be added to the problem after passing it to the Optimizer using the input routines.
|
|
auto |
addSets (std::vector< xpress::SetType > type, xpress::SizedArray< std::vector< int > > const &elements, xpress::SizedArray< std::vector< double > > const &weights, xpress::SizedArray< std::optional< std::string > const > const &name) -> std::vector< int > |
|
Add multiple set constraints to the problem.
|
|
auto |
addSlpCascadeEndCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a slpcascadeend callback.
|
|
auto |
addSlpCascadeStartCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a slpcascadestart callback.
|
|
auto |
addSlpCascadeVarCallback (std::function< int(XPRSProblem &, int)> callback, int prio=0) -> CallbackHandle |
|
Add a slpcascadevar callback.
|
|
auto |
addSlpCascadeVarFailCallback (std::function< int(XPRSProblem &, int)> callback, int prio=0) -> CallbackHandle |
|
Add a slpcascadevarfail callback.
|
|
auto |
addSlpConstructCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a slpconstruct callback.
|
|
auto |
addSlpDrColCallback (std::function< int(XPRSProblem &, int, int, double, double *, double, double)> callback, int prio=0) -> CallbackHandle |
|
Add a slpdrcol callback.
|
|
auto |
addSlpIntSolCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a slpintsol callback.
|
|
auto |
addSlpIterEndCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a slpiterend callback.
|
|
auto |
addSlpIterStartCallback (std::function< int(XPRSProblem &)> callback, int prio=0) -> CallbackHandle |
|
Add a slpiterstart callback.
|
|
auto |
addSlpIterVarCallback (std::function< int(XPRSProblem &, int)> callback, int prio=0) -> CallbackHandle |
|
Add a slpitervar callback.
|
|
auto |
addSlpPreUpdateLinearizationCallback (std::function< int(XPRSProblem &, int *)> callback, int prio=0) -> CallbackHandle |
|
Add a slppreupdatelinearization callback.
|
|
auto |
addUserSolNotifyCallback (std::function< void(XPRSProblem &, char const *, int)> callback, int prio=0) -> CallbackHandle |
|
Add an usersolnotify callback.
|
|
void |
alter (std::optional< std::string > const &filename) |
|
Alters or changes matrix elements, right hand sides and constraint senses in the current problem.
|
|
auto |
basisStability (int type, int norm, int scaled) -> double |
|
Calculates various measures for the stability of the current basis, including the basis condition number.
|
|
void |
bndSA (int ncols, Array< int const > const &colind, Array< double > const &lblower, Array< double > const &lbupper, Array< double > const &ublower, Array< double > const &ubupper) |
|
Returns upper and lower sensitivity ranges for specified variables' lower and upper bounds.
|
|
void |
bTran (Array< double > const &vec) |
|
Post-multiplies a (row) vector provided by the user by the inverse of the current basis.
|
|
auto |
calcObjective (Array< double const > const &solution) -> double |
|
Calculates the objective value of a given solution.
|
|
auto |
calcObjN (int objidx, Array< double const > const &solution) -> double |
|
Calculates the objective value of the given objective function in a multi-objective problem.
|
|
auto |
calcReducedCosts (Array< double const > const &duals, Array< double const > const &solution) -> std::vector< double > |
|
Calculates the reduced cost values for a given (row) dual solution.
|
|
auto |
calcSlacks (Array< double const > const &solution) -> std::vector< double > |
|
Calculates the row slack values for a given solution.
|
|
auto |
calcSolInfo (Array< double const > const &solution, Array< double const > const &duals, int property) -> double |
|
Calculates the required property of a solution, like maximum infeasibility of a given primal and dual solution.
|
|
auto |
chgBounds (int j, double lb, double ub) -> void |
|
Change bounds of a single column.
|
|
void |
chgBounds (int nbounds, Array< int const > const &colind, Array< char const > const &bndtype, Array< double const > const &bndval) |
|
Used to change the bounds on columns in the matrix.
|
|
void |
chgCoef (int row, int col, double coef) |
|
Used to change a single coefficient in the matrix.
|
|
void |
chgColType (int ncols, Array< int const > const &colind, Array< char const > const &coltype) |
|
Used to change the type of a specified set of columns in the matrix.
|
|
void |
chgGlbLimit (int ncols, Array< int const > const &colind, Array< double const > const &limit) |
|
Used to change semi-continuous or semi-integer lower bounds, or upper limits on partial integers.
|
|
auto |
chgLB (int j, double lb) -> void |
|
Change the lower bound of a single column.
|
|
void |
chgMCoef (int ncoefs, Array< int const > const &rowind, Array< int const > const &colind, Array< double const > const &rowcoef) |
|
Used to change multiple coefficients in the matrix.
|
|
void |
chgMCoef (XPRSint64 ncoefs, Array< int const > const &rowind, Array< int const > const &colind, Array< double const > const &rowcoef) |
|
Used to change multiple coefficients in the matrix.
|
|
void |
chgMQObj (int ncoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef) |
|
Used to change multiple quadratic coefficients in the objective function.
|
|
void |
chgMQObj (XPRSint64 ncoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef) |
|
Used to change multiple quadratic coefficients in the objective function.
|
|
void |
chgObj (int ncols, Array< int const > const &colind, Array< double const > const &objcoef) |
|
Used to change the objective function coefficients.
|
|
void |
chgObjN (int objidx, int ncols, Array< int const > const &colind, Array< double const > const &objcoef) |
|
Modifies one or more coefficients of an objective function in a multi-objective problem.
|
|
void |
chgObjSense (ObjSense objsense) |
|
Changes the problem's objective function sense to minimize or maximize.
|
|
void |
chgQObj (int objqcol1, int objqcol2, double objqcoef) |
|
Used to change a single quadratic coefficient in the objective function corresponding to the variable pair (objqcol1,objqcol2) of the Hessian matrix.
|
|
void |
chgQRowCoeff (int row, int rowqcol1, int rowqcol2, double rowqcoef) |
|
Changes a single quadratic coefficient in a row.
|
|
void |
chgRhs (int nrows, Array< int const > const &rowind, Array< double const > const &rhs) |
|
Used to change right—hand side values of the problem.
|
|
void |
chgRhsRange (int nrows, Array< int const > const &rowind, Array< double const > const &rng) |
|
Used to change the range for a row of the problem matrix.
|
|
void |
chgRowType (int nrows, Array< int const > const &rowind, Array< char const > const &rowtype) |
|
Used to change the type of a row in the matrix.
|
|
auto |
chgUB (int j, double ub) -> void |
|
Change the upper bound of a single column.
|
|
void |
clearIIS () |
|
Resets the search for Irreducible Infeasible Sets (IIS).
|
|
auto |
clearObjective () -> void |
|
Clear the objective function.
|
|
void |
clearRowFlags (Array< int const > const &flags, int first, int last) |
|
Clears extra information attached to a range of rows.
|
|
void |
copyControls (XPRSProblem const &src) |
|
Copies controls defined for one problem to another.
|
|
void |
copyProb (XPRSProblem const &src, std::optional< std::string > const &name) |
|
Copies information defined for one problem to another.
|
|
auto |
crossoverLpSol () -> int |
|
Provides a basic optimal solution for a given solution of an LP problem.
|
|
void |
delCPCuts () |
|
During the branch and bound search, cuts are stored in the cut pool to be applied at descendant nodes.
|
|
void |
delCPCuts (int cuttype, int interp) |
|
During the branch and bound search, cuts are stored in the cut pool to be applied at descendant nodes.
|
|
void |
delCPCuts (int cuttype, int interp, int ncuts, Array< XPRScut const > const &cutind) |
|
During the branch and bound search, cuts are stored in the cut pool to be applied at descendant nodes.
|
|
void |
delCPCuts (int ncuts, Array< XPRScut const > const &cutind) |
|
During the branch and bound search, cuts are stored in the cut pool to be applied at descendant nodes.
|
|
void |
delCuts (int basis) |
|
Deletes cuts from the matrix at the current node.
|
|
void |
delCuts (int basis, int cuttype, int interp) |
|
Deletes cuts from the matrix at the current node.
|
|
void |
delCuts (int basis, int cuttype, int interp, double delta) |
|
Deletes cuts from the matrix at the current node.
|
|
void |
delCuts (int basis, int cuttype, int interp, double delta, int ncuts, Array< XPRScut const > const &cutind) |
|
Deletes cuts from the matrix at the current node.
|
|
void |
delCuts (int basis, int ncuts, Array< XPRScut const > const &cutind) |
|
Deletes cuts from the matrix at the current node.
|
|
auto |
delIndicator (int row) -> void |
|
Delete a single indicator constraint.
|
|
void |
delIndicators (int first, int last) |
|
Delete indicator constraints.
|
|
void |
delObj (int objidx) |
|
Removes an objective function from a multi-objective problem.
|
|
void |
delQMatrix (int row) |
|
Deletes the quadratic part of a row or of the objective function.
|
|
void |
destroyProb () |
|
Removes a given problem and frees any memory associated with it following manipulation and optimization.
|
|
void |
dumpControls () |
|
Displays the list of controls and their current value for those controls that have been set to a non default value.
|
|
void |
estimateRowDualRanges (int nrows, Array< int const > const &rowind, int iterlim, Array< double > const &mindual, Array< double > const &maxdual) |
|
Performs a dual side range sensitivity analysis, i.e.
|
|
auto |
firstIIS (int mode) -> int |
|
Initiates a search for an Irreducible Infeasible Set (IIS) in an infeasible problem.
|
|
void |
fixMipEntities (int options) |
|
Fixes all the MIP entities to the values of the last found MIP solution.
|
|
void |
fTran (Array< double > const &vec) |
|
Pre-multiplies a (column) vector provided by the user by the inverse of the current matrix.
|
|
void |
getAttribInfo (std::optional< std::string > const &name, int *p_id, ParameterType *p_type) |
|
Accesses the id number and the type information of an attribute given its name.
|
|
void |
getBasis (Array< int > const &rowstat, Array< int > const &colstat) |
|
Returns the current basis into the user's data arrays.
|
|
void |
getBasisVal (int row, int col, int *p_rowstat, int *p_colstat) |
|
Returns the current basis status for a specific column or row.
|
|
auto |
getCallbackDual (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackDual (int index) const -> double |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackDuals () const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackDuals (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackDuals (bool *p_available, Array< double > const &duals, int first, int last) const |
|
Returns the dual values from the solution associated with the current callback.
|
|
auto |
getCallbackDuals (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackDuals (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackDuals(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveDual (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackPresolveDuals(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveDual (int index) const -> double |
|
Convenience wrapper for getCallbackPresolveDuals(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveDuals () const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveDuals(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackPresolveDuals (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveDuals(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackPresolveDuals (bool *p_available, Array< double > const &duals, int first, int last) const |
|
Returns the dual values from the solution to the presolved problem associated with the current callback.
|
|
auto |
getCallbackPresolveDuals (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveDuals(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveDuals (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveDuals(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveRedCost (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackPresolveRedCosts(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveRedCost (int index) const -> double |
|
Convenience wrapper for getCallbackPresolveRedCosts(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveRedCosts () const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackPresolveRedCosts (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackPresolveRedCosts (bool *p_available, Array< double > const &djs, int first, int last) const |
|
Returns the reduced costs from the solution to the presolved problem associated with the current callback.
|
|
auto |
getCallbackPresolveRedCosts (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveRedCosts (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveSlack (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackPresolveSlacks(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveSlack (int index) const -> double |
|
Convenience wrapper for getCallbackPresolveSlacks(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveSlacks () const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSlacks(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackPresolveSlacks (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSlacks(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackPresolveSlacks (bool *p_available, Array< double > const &slacks, int first, int last) const |
|
Returns the slack values from the solution to the presolved problem associated with the current callback.
|
|
auto |
getCallbackPresolveSlacks (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSlacks(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveSlacks (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSlacks(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveSolution () const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSolution(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackPresolveSolution (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSolution(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackPresolveSolution (bool *p_available, Array< double > const &x, int first, int last) const |
|
Returns the solution to the presolved problem associated with the current callback.
|
|
auto |
getCallbackPresolveSolution (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSolution(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveSolution (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackPresolveSolution(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackPresolveSolution (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackPresolveSolution(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackPresolveSolution (int index) const -> double |
|
Convenience wrapper for getCallbackPresolveSolution(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackRedCost (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackRedCost (int index) const -> double |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackRedCosts () const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackRedCosts (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackRedCosts (bool *p_available, Array< double > const &djs, int first, int last) const |
|
Returns the reduced costs from the solution associated with the current callback.
|
|
auto |
getCallbackRedCosts (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackRedCosts (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackRedCosts(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSlack (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackSlack (int index) const -> double |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackSlacks () const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackSlacks (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackSlacks (bool *p_available, Array< double > const &slacks, int first, int last) const |
|
Returns the slack values from the solution associated with the current callback.
|
|
auto |
getCallbackSlacks (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSlacks (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSlacks(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSolution () const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getCallbackSolution (bool *p_available) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getCallbackSolution (bool *p_available, Array< double > const &x, int first, int last) const |
|
Returns the solution associated with the current callback.
|
|
auto |
getCallbackSolution (bool *p_available, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSolution (bool *p_available, int index) const -> double |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCallbackSolution (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getCallbackSolution (int index) const -> double |
|
Convenience wrapper for getCallbackSolution(bool*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getCoef (int row, int col) -> double |
|
Returns a single coefficient in the constraint matrix.
|
|
void |
getCols (Array< int > const &start, Array< int > const &rowind, Array< double > const &rowcoef, int maxcoefs, int *p_ncoefs, int first, int last) |
|
Returns the nonzeros in the constraint matrix for the columns in a given range.
|
|
auto |
getCols (Array< int > const &start, Array< int > const &rowind, Array< double > const &rowcoef, int maxcoefs, int first, int last) -> int |
|
Returns the nonzeros in the constraint matrix for the columns in a given range.
|
|
auto |
getCols (Array< XPRSint64 > const &start, Array< int > const &rowind, Array< double > const &rowcoef, XPRSint64 maxcoefs, int first, int last) -> XPRSint64 |
|
Returns the nonzeros in the constraint matrix for the columns in a given range.
|
|
void |
getCols (Array< XPRSint64 > const &start, Array< int > const &rowind, Array< double > const &rowcoef, XPRSint64 maxcoefs, XPRSint64 *p_ncoefs, int first, int last) |
|
Returns the nonzeros in the constraint matrix for the columns in a given range.
|
|
auto |
getCols (int first, int last) -> xpress::XPRSProblem::MatrixInfo |
|
Get range of columns.
|
|
auto |
getColType (int first, int last) -> std::vector< char > |
|
Returns the column types for the columns in a given range.
|
|
auto |
getColumnName (int index) -> std::string |
|
Get a column name.
|
|
auto |
getColumnNames (int first, int last) -> std::vector< std::string > |
|
Get names of columns.
|
|
void |
getControlInfo (std::optional< std::string > const &name, int *p_id, ParameterType *p_type) |
|
Accesses the id number and the type information of a control given its name.
|
|
void |
getCPCutList (int cuttype, int interp, double delta, int *p_ncuts, int maxcuts, Array< XPRScut > const &cutind, Array< double > const &viol) |
|
Returns a list of cut indices from the cut pool.
|
|
auto |
getCPCutList (int cuttype, int interp, double delta, int maxcuts, Array< XPRScut > const &cutind, Array< double > const &viol) -> int |
|
Returns a list of cut indices from the cut pool.
|
|
auto |
getCPCutList (int maxcuts, Array< XPRScut > const &cutind, Array< double > const &viol) -> int |
|
Returns a list of cut indices from the cut pool.
|
|
void |
getCPCuts (Array< XPRScut const > const &rowind, int ncuts, int maxcoefs, Array< int > const &cuttype, Array< char > const &rowtype, Array< int > const &start, Array< int > const &colind, Array< double > const &cutcoef, Array< double > const &rhs) |
|
Returns cuts from the cut pool.
|
|
void |
getCPCuts (Array< XPRScut const > const &rowind, int ncuts, XPRSint64 maxcoefs, Array< int > const &cuttype, Array< char > const &rowtype, Array< XPRSint64 > const &start, Array< int > const &colind, Array< double > const &cutcoef, Array< double > const &rhs) |
|
Returns cuts from the cut pool.
|
|
void |
getCutList (int cuttype, int interp, int *p_ncuts, int maxcuts, Array< XPRScut > const &cutind) |
|
Retrieves a list of cut pointers for the cuts active at the current node.
|
|
auto |
getCutList (int cuttype, int interp, int maxcuts, Array< XPRScut > const &cutind) -> int |
|
Retrieves a list of cut pointers for the cuts active at the current node.
|
|
auto |
getCutList (int maxcuts, Array< XPRScut > const &cutind) -> int |
|
Retrieves a list of cut pointers for the cuts active at the current node.
|
|
auto |
getCutMap (int ncuts, Array< XPRScut const > const &cutind) -> std::vector< int > |
|
Used to return in which rows a list of cuts are currently loaded into the Optimizer.
|
|
auto |
getCutSlack (XPRScut cutind) -> double |
|
Used to calculate the slack value of a cut with respect to the current LP relaxation solution.
|
|
auto |
getDblAttrib (int attrib) const -> double |
|
Enables users to retrieve the values of various double problem attributes.
|
|
auto |
getDblControl (int control) const -> double |
|
Retrieves the value of a given double control parameter.
|
|
auto |
getDirs () -> int |
|
Used to return the directives that have been loaded into a matrix.
|
|
auto |
getDirs (Array< int > const &indices, Array< int > const &prios, Array< char > const &branchdirs, Array< double > const &uppseudo, Array< double > const &downpseudo) -> int |
|
Used to return the directives that have been loaded into a matrix.
|
|
void |
getDirs (int *p_ndir, Array< int > const &indices, Array< int > const &prios, Array< char > const &branchdirs, Array< double > const &uppseudo, Array< double > const &downpseudo) |
|
Used to return the directives that have been loaded into a matrix.
|
|
auto |
getDiscreteCols () -> xpress::XPRSProblem::MIPEntityInfo |
|
Get information about MIP entities.
|
|
auto |
getDual (int *status, int index) const -> double |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getDual (int index) const -> double |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
void |
getDualRay (Array< double > const &ray, int *p_hasray) |
|
Retrieves a dual ray (dual unbounded direction) for the current problem, if the problem is found to be infeasible.
|
|
auto |
getDuals () const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getDuals (int *status) const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getDuals (int *status, Array< double > const &duals, int first, int last) const |
|
Used to obtain the dual values associated with the incumbent solution during or after optimization of a continuous problem with XPRSoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getDuals (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getDuals (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getDuals(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
void |
getGenCons (Array< GenConsType > const &contype, Array< int > const &resultant, Array< int > const &colstart, Array< int > const &colind, int maxcols, int *p_ncols, Array< int > const &valstart, Array< double > const &val, int maxvals, int *p_nvals, int first, int last) |
|
Returns the general constraints y = f(x1, ..., xn, c1, ..., cm) in a given range.
|
|
void |
getGenCons (Array< GenConsType > const &contype, Array< int > const &resultant, Array< XPRSint64 > const &colstart, Array< int > const &colind, XPRSint64 maxcols, XPRSint64 *p_ncols, Array< XPRSint64 > const &valstart, Array< double > const &val, XPRSint64 maxvals, XPRSint64 *p_nvals, int first, int last) |
|
Returns the general constraints y = f(x1, ..., xn, c1, ..., cm) in a given range.
|
|
auto |
getGenCons (int first, int last) -> xpress::XPRSProblem::GeneralConstraintInfo |
|
Query a range of general constraints.
|
|
auto |
getGenConsName (int index) -> std::string |
|
Get a general constraint name.
|
|
auto |
getGenConsNames (int first, int last) -> std::vector< std::string > |
|
Get names of general constraints.
|
|
void |
getIISData (int iis, int *p_nrows, int *p_ncols, Array< int > const &rowind, Array< int > const &colind, Array< char > const &contype, Array< char > const &bndtype, Array< double > const &duals, Array< double > const &djs, Array< char > const &isolationrows, Array< char > const &isolationcols) |
|
Returns information for an Irreducible Infeasible Set: size, variables and constraints (row and column vectors), and conflicting sides of the variables.
|
|
auto |
getIISData (int number) -> xpress::XPRSProblem::IISData |
|
Get information about an IIS.
|
|
auto |
getIndex (int type, std::optional< std::string > const &name) -> int |
|
Returns the index for a specified row or column name.
|
|
auto |
getIndicator (int row) -> std::optional< xpress::IndicatorInfo > |
|
Get indicator information for a single row.
|
|
void |
getIndicators (Array< int > const &colind, Array< int > const &complement, int first, int last) |
|
Returns the indicator constraint condition (indicator variable and complement flag) associated to the rows in a given range.
|
|
auto |
getIndicators (int first, int last) -> std::vector< xpress::IndicatorInfo > |
|
Get indicator information for a range of rows.
|
|
void |
getInfeas (int *p_nprimalcols, int *p_nprimalrows, int *p_ndualrows, int *p_ndualcols, Array< int > const &x, Array< int > const &slack, Array< int > const &duals, Array< int > const &djs) |
|
Returns a list of infeasible primal and dual variables.
|
|
auto |
getIntAttrib (int attrib) const -> int |
|
Enables users to recover the values of various integer problem attributes.
|
|
auto |
getIntControl (int control) const -> int |
|
Enables users to recover the values of various integer control parameters.
|
|
void |
getLastBarSol (Array< double > const &x, Array< double > const &slack, Array< double > const &duals, Array< double > const &djs, int *p_status) |
|
Used to obtain the last barrier solution values following optimization that used the barrier solver.
|
|
auto |
getLB (int first, int last) -> std::vector< double > |
|
Returns the lower bounds for the columns in a given range.
|
|
auto |
getLongAttrib (int attrib) const -> XPRSint64 |
|
Enables users to recover the values of various integer problem attributes.
|
|
auto |
getLongControl (int control) const -> XPRSint64 |
|
Enables users to recover the values of various integer control parameters.
|
|
void |
getLpSol (Array< double > const &x) |
|
Used to obtain the LP solution values following optimization.
|
|
void |
getLpSol (Array< double > const &x, Array< double > const &slack, Array< double > const &duals, Array< double > const &djs) |
|
Used to obtain the LP solution values following optimization.
|
|
void |
getLpSolVal (int col, int row, double *p_x, double *p_slack, double *p_dual, double *p_dj) |
|
Used to obtain a single LP solution value following optimization.
|
|
auto |
getMessageStatus (int msgcode) -> int |
|
Retrieves the current suppression status of a message.
|
|
auto |
getMipEntities () -> xpress::XPRSProblem::MIPEntityInfo |
|
Get information about MIP entities and SOS.
|
|
auto |
getMipEntities (Array< char > const &coltype, Array< int > const &colind, Array< double > const &limit) -> int |
|
Retrieves integr and entity information about a problem.
|
|
void |
getMipEntities (int *p_nentities, Array< char > const &coltype, Array< int > const &colind, Array< double > const &limit) |
|
Retrieves integr and entity information about a problem.
|
|
void |
getMipEntities (int *p_nentities, int *p_nsets, Array< char > const &coltype, Array< int > const &colind, Array< double > const &limit, Array< char > const &settype, Array< int > const &start, Array< int > const &setcols, Array< double > const &refval) |
|
Retrieves integr and entity information about a problem.
|
|
void |
getMipEntities (int *p_nentities, int *p_nsets, Array< char > const &coltype, Array< int > const &colind, Array< double > const &limit, Array< char > const &settype, Array< XPRSint64 > const &start, Array< int > const &setcols, Array< double > const &refval) |
|
Retrieves integr and entity information about a problem.
|
|
void |
getMipSol (Array< double > const &x) |
|
Used to obtain the solution values of the last MIP solution that was found.
|
|
void |
getMipSol (Array< double > const &x, Array< double > const &slack) |
|
Used to obtain the solution values of the last MIP solution that was found.
|
|
void |
getMipSolVal (int col, int row, double *p_x, double *p_slack) |
|
Used to obtain a single solution value of the last MIP solution that was found.
|
|
void |
getMQObj (Array< int > const &start, Array< int > const &colind, Array< double > const &objqcoef, int maxcoefs, int *p_ncoefs, int first, int last) |
|
Returns the nonzeros in the quadratic objective coefficients matrix for the columns in a given range.
|
|
auto |
getMQObj (Array< int > const &start, Array< int > const &colind, Array< double > const &objqcoef, int maxcoefs, int first, int last) -> int |
|
Returns the nonzeros in the quadratic objective coefficients matrix for the columns in a given range.
|
|
auto |
getMQObj (Array< XPRSint64 > const &start, Array< int > const &colind, Array< double > const &objqcoef, XPRSint64 maxcoefs, int first, int last) -> XPRSint64 |
|
Returns the nonzeros in the quadratic objective coefficients matrix for the columns in a given range.
|
|
void |
getMQObj (Array< XPRSint64 > const &start, Array< int > const &colind, Array< double > const &objqcoef, XPRSint64 maxcoefs, XPRSint64 *p_ncoefs, int first, int last) |
|
Returns the nonzeros in the quadratic objective coefficients matrix for the columns in a given range.
|
|
auto |
getMQObj (int first, int last) -> xpress::XPRSProblem::MatrixInfo |
|
Get quadratic objective matrix for range of columns.
|
|
auto |
getName (int type, int elt) -> std::string |
|
Get the name of a single element.
|
|
auto |
getName (xpress::Namespaces type, int elt) -> std::string |
|
Get the name of a single element.
|
|
auto |
getNameList (int type, int first, int last) -> std::vector< std::string > |
|
Returns the names for the rows, columns, sets, piecewise linear constraints, general constraints or objectives in a given range.
|
|
auto |
getNames (int type, int first, int last) -> std::vector< std::string > |
|
Get names.
|
|
auto |
getNames (xpress::Namespaces type, int first, int last) -> std::vector< std::string > |
|
Get names.
|
|
void |
getNlpsol (Array< double > const &x, Array< double > const &slack, Array< double > const &duals, Array< double > const &djs) |
|
Obtain the current SLP solution values.
|
|
auto |
getObj (int first, int last) -> std::vector< double > |
|
Returns the objective function coefficients for the columns in a given range.
|
|
auto |
getObjDblAttrib (int solveidx, int attrib) -> double |
|
Retrieves the value of a given double attribute associated with a multi-objective solve.
|
|
auto |
getObjDblControl (int objidx, ObjControl control) -> double |
|
Retrieves the value of a given double control parameter associated with an objective function.
|
|
auto |
getObjIntAttrib (int solveidx, int attrib) -> int |
|
Retrieves the value of a given integer attribute associated with a multi-objective solve.
|
|
auto |
getObjIntControl (int objidx, ObjControl control) -> int |
|
Retrieves the value of a given integer control parameter associated with an objective.
|
|
auto |
getObjLongAttrib (int solveidx, int attrib) -> XPRSint64 |
|
Retrieves the value of a given integer attribute associated with a multi-objective solve.
|
|
auto |
getObjN (int objidx, int first, int last) -> std::vector< double > |
|
For a given objective function, returns the objective coefficients for the columns in a given range.
|
|
auto |
getPivotOrder () -> std::vector< int > |
|
Returns the pivot order of the basic variables.
|
|
void |
getPivots (int enter, Array< int > const &outlist, Array< double > const &x, double *p_objval, int *p_npivots, int maxpivots) |
|
Returns a list of potential leaving variables if a specified variable enters the basis.
|
|
void |
getPresolveBasis (Array< int > const &rowstat, Array< int > const &colstat) |
|
Returns the current basis from memory into the user's data areas.
|
|
void |
getPresolveMap (Array< int > const &rowmap, Array< int > const &colmap) |
|
Returns the mapping of the row and column numbers from the presolve problem back to the original problem.
|
|
void |
getPresolveSol (Array< double > const &x) |
|
Returns the solution for the presolved problem from memory.
|
|
void |
getPresolveSol (Array< double > const &x, Array< double > const &slack, Array< double > const &duals, Array< double > const &djs) |
|
Returns the solution for the presolved problem from memory.
|
|
void |
getPrimalRay (Array< double > const &ray, int *p_hasray) |
|
Retrieves a primal ray (primal unbounded direction) for the current problem, if the problem is found to be unbounded.
|
|
auto |
getProbName () -> std::string |
|
Returns the current problem name.
|
|
void |
getPwlCons (Array< int > const &colind, Array< int > const &resultant, Array< int > const &start, Array< double > const &xval, Array< double > const &yval, int maxpoints, int *p_npoints, int first, int last) |
|
Returns the piecewise linear constraints y = f(x) in a given range.
|
|
void |
getPwlCons (Array< int > const &colind, Array< int > const &resultant, Array< XPRSint64 > const &start, Array< double > const &xval, Array< double > const &yval, XPRSint64 maxpoints, XPRSint64 *p_npoints, int first, int last) |
|
Returns the piecewise linear constraints y = f(x) in a given range.
|
|
auto |
getPWLName (int index) -> std::string |
|
Get a PWL constraint name.
|
|
auto |
getPWLNames (int first, int last) -> std::vector< std::string > |
|
Get names of PWL constraints.
|
|
auto |
getQObj (int objqcol1, int objqcol2) -> double |
|
Returns a single quadratic objective function coefficient corresponding to the variable pair (objqcol1, objqcol2) of the Hessian matrix.
|
|
auto |
getQRowCoeff (int row, int rowqcol1, int rowqcol2) -> double |
|
Returns a single quadratic constraint coefficient corresponding to the variable pair (rowqcol1 , rowqcol2 ) of the Hessian of a given constraint.
|
|
void |
getQRowQMatrix (int row, Array< int > const &start, Array< int > const &colind, Array< double > const &rowqcoef, int maxcoefs, int *p_ncoefs, int first, int last) |
|
Returns the nonzeros in a quadratic constraint coefficients matrix for the columns in a given range.
|
|
auto |
getQRowQMatrix (int row, Array< int > const &start, Array< int > const &colind, Array< double > const &rowqcoef, int maxcoefs, int first, int last) -> int |
|
Returns the nonzeros in a quadratic constraint coefficients matrix for the columns in a given range.
|
|
auto |
getQRowQMatrixTriplets (int row, Array< int > const &rowqcol1, Array< int > const &rowqcol2, Array< double > const &rowqcoef) -> int |
|
Returns the nonzeros in a quadratic constraint coefficients matrix as triplets (index pairs with coefficients).
|
|
void |
getQRowQMatrixTriplets (int row, int *p_ncoefs, Array< int > const &rowqcol1, Array< int > const &rowqcol2, Array< double > const &rowqcoef) |
|
Returns the nonzeros in a quadratic constraint coefficients matrix as triplets (index pairs with coefficients).
|
|
auto |
getQRows () -> int |
|
Returns the list indices of the rows that have quadratic coefficients.
|
|
auto |
getQRows (Array< int > const &rowind) -> int |
|
Returns the list indices of the rows that have quadratic coefficients.
|
|
void |
getQRows (int *p_nrows, Array< int > const &rowind) |
|
Returns the list indices of the rows that have quadratic coefficients.
|
|
auto |
getRedCost (int *status, int index) const -> double |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getRedCost (int index) const -> double |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getRedCosts () const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getRedCosts (int *status) const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getRedCosts (int *status, Array< double > const &djs, int first, int last) const |
|
Used to obtain the reduced costs associated with the incumbent solution during or after optimization of a continuous problem with XPRSoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getRedCosts (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getRedCosts (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getRedCosts(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getRhs (int first, int last) -> std::vector< double > |
|
Returns the right hand side elements for the rows in a given range.
|
|
auto |
getRhsRange (int first, int last) -> std::vector< double > |
|
Returns the right hand side range values for the rows in a given range.
|
|
auto |
getRowFlags (int first, int last) -> std::vector< int > |
|
Retrieve if a range of rows have been set up as special rows.
|
|
auto |
getRowName (int index) -> std::string |
|
Get a row name.
|
|
auto |
getRowNames (int first, int last) -> std::vector< std::string > |
|
Get names of rows.
|
|
void |
getRows (Array< int > const &start, Array< int > const &colind, Array< double > const &colcoef, int maxcoefs, int *p_ncoefs, int first, int last) |
|
Returns the nonzeros in the constraint matrix for the rows in a given range.
|
|
auto |
getRows (Array< int > const &start, Array< int > const &colind, Array< double > const &colcoef, int maxcoefs, int first, int last) -> int |
|
Returns the nonzeros in the constraint matrix for the rows in a given range.
|
|
auto |
getRows (Array< XPRSint64 > const &start, Array< int > const &colind, Array< double > const &colcoef, XPRSint64 maxcoefs, int first, int last) -> XPRSint64 |
|
Returns the nonzeros in the constraint matrix for the rows in a given range.
|
|
void |
getRows (Array< XPRSint64 > const &start, Array< int > const &colind, Array< double > const &colcoef, XPRSint64 maxcoefs, XPRSint64 *p_ncoefs, int first, int last) |
|
Returns the nonzeros in the constraint matrix for the rows in a given range.
|
|
auto |
getRows (int first, int last) -> xpress::XPRSProblem::MatrixInfo |
|
Get range of rows.
|
|
auto |
getRowType (int first, int last) -> std::vector< char > |
|
Returns the row types for the rows in a given range.
|
|
void |
getScale (Array< int > const &rowscale, Array< int > const &colscale) |
|
Returns the the current scaling of the matrix.
|
|
void |
getScaledInfeas (int *p_nprimalcols, int *p_nprimalrows, int *p_ndualrows, int *p_ndualcols, Array< int > const &x, Array< int > const &slack, Array< int > const &duals, Array< int > const &djs) |
|
Returns a list of scaled infeasible primal and dual variables for the original problem.
|
|
auto |
getSetDefinitions () -> xpress::XPRSProblem::MIPEntityInfo |
|
Get information about SOS.
|
|
auto |
getSetName (int index) -> std::string |
|
Get a set (SOS) name.
|
|
auto |
getSetNames (int first, int last) -> std::vector< std::string > |
|
Get names of sets (SOS).
|
|
auto |
getSlack (int *status, int index) const -> double |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSlack (int index) const -> double |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSlacks () const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getSlacks (int *status) const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getSlacks (int *status, Array< double > const &slacks, int first, int last) const |
|
Used to obtain the slack values associated with the incumbent solution during or after optimization with XPRSoptimize , XPRSmipoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getSlacks (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSlacks (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSlacks(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSolution () const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
auto |
getSolution (int *status) const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array and queries all elements.
|
|
void |
getSolution (int *status, Array< double > const &x, int first, int last) const |
|
Used to obtain the incumbent solution during or after optimization with XPRSoptimize , XPRSmipoptimize , XPRSlpoptimize or XPRSnlpoptimize .
|
|
auto |
getSolution (int *status, int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSolution (int *status, int index) const -> double |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getSolution (int first, int last) const -> std::vector< double > |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that allocates the output array.
|
|
auto |
getSolution (int index) const -> double |
|
Convenience wrapper for getSolution(int*, Array<double> const &, int, int) const that queries only a single value.
|
|
auto |
getStrAttrib (int attrib) const -> std::string |
|
Enables users to recover the values of various string problem attributes.
|
|
auto |
getStrControl (int control) const -> std::string |
|
Returns the value of a given string control parameters.
|
|
void |
getStringControl (int control, char *value, int maxbytes, int *p_nbytes) const |
|
Returns the value of a given string control parameters.
|
|
void |
getStrStringAttrib (int attrib, char *value, int maxbytes, int *p_nbytes) const |
|
Enables users to recover the values of various string problem attributes.
|
|
auto |
getUB (int first, int last) -> std::vector< double > |
|
Returns the upper bounds for the columns in a given range.
|
|
auto |
getUnbVec () -> int |
|
Returns the index vector which causes the primal simplex or dual simplex algorithm to determine that a matrix is primal or dual unbounded respectively.
|
|
void |
IISAll () |
|
Performs an automated search for independent Irreducible Infeasible Sets (IIS) in an infeasible problem.
|
|
void |
IISIsolations (int iis) |
|
Performs the isolation identification procedure for an Irreducible Infeasible Set (IIS).
|
|
auto |
IISStatus () -> xpress::XPRSProblem::IISStatusInfo |
|
Get the IIS status.
|
|
void |
IISStatus (int *p_niis, Array< int > const &nrows, Array< int > const &ncols, Array< double > const &suminfeas, Array< int > const &numinfeas) |
|
Returns statistics on the Irreducible Infeasible Sets (IIS) found so far by XPRSiisfirst (IIS ), XPRSiisnext (IIS -n ) or XPRSiisall (IIS -a ).
|
|
void |
interrupt (StopType reason) |
|
Interrupts the Optimizer algorithms.
|
|
void |
loadBasis (Array< int const > const &rowstat, Array< int const > const &colstat) |
|
Loads a basis from the user's areas.
|
|
void |
loadBranchDirs (int ncols, Array< int const > const &colind, Array< int const > const &dir) |
|
Loads directives into the current problem to specify which MIP entities the Optimizer should continue to branch on when a node solution is integer feasible.
|
|
void |
loadCuts (int cuttype, int interp) |
|
Loads cuts from the cut pool into the matrix.
|
|
void |
loadCuts (int cuttype, int interp, int ncuts, Array< XPRScut const > const &cutind) |
|
Loads cuts from the cut pool into the matrix.
|
|
void |
loadCuts (int ncuts, Array< XPRScut const > const &cutind) |
|
Loads cuts from the cut pool into the matrix.
|
|
void |
loadDelayedRows (int nrows, Array< int const > const &rowind) |
|
Specifies that a set of rows in the matrix will be treated as delayed rows during a tree search.
|
|
void |
loadDirs (int ndirs, Array< int const > const &colind, Array< int const > const &priority, Array< char const > const &dir, Array< double const > const &uppseudo, Array< double const > const &downpseudo) |
|
Loads directives into the matrix.
|
|
void |
loadLp (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub) |
|
Enables the user to pass a matrix directly to the Optimizer, rather than reading the matrix from a file.
|
|
void |
loadLp (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub) |
|
Enables the user to pass a matrix directly to the Optimizer, rather than reading the matrix from a file.
|
|
auto |
loadLpSol (Array< double const > const &x, Array< double const > const &slack, Array< double const > const &duals, Array< double const > const &djs) -> int |
|
Loads an LP solution for the problem into the Optimizer.
|
|
void |
loadMip (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, int nentities, int nsets, Array< char const > const &coltype, Array< int const > const &entind, Array< double const > const &limit, Array< char const > const &settype, Array< int const > const &setstart, Array< int const > const &setind, Array< double const > const &refval) |
|
Used to load a MIP problem into the Optimizer data structures.
|
|
void |
loadMip (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, int nentities, int nsets, Array< char const > const &coltype, Array< int const > const &entind, Array< double const > const &limit, Array< char const > const &settype, Array< XPRSint64 const > const &setstart, Array< int const > const &setind, Array< double const > const &refval) |
|
Used to load a MIP problem into the Optimizer data structures.
|
|
auto |
loadMipSol (Array< double const > const &x) -> int |
|
Loads a starting MIP solution for the problem into the Optimizer.
|
|
void |
loadMIQCQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, int nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef, int nqrows, Array< int const > const &qrowind, Array< int const > const &nrowqcoefs, Array< int const > const &rowqcol1, Array< int const > const &rowqcol2, Array< double const > const &rowqcoef, int nentities, int nsets, Array< char const > const &coltype, Array< int const > const &entind, Array< double const > const &limit, Array< char const > const &settype, Array< int const > const &setstart, Array< int const > const &setind, Array< double const > const &refval) |
|
Used to load a mixed integer quadratic problem with quadratic constraints into the Optimizer data structure.
|
|
void |
loadMIQCQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, XPRSint64 nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef, int nqrows, Array< int const > const &qrowind, Array< XPRSint64 const > const &nrowqcoefs, Array< int const > const &rowqcol1, Array< int const > const &rowqcol2, Array< double const > const &rowqcoef, int nentities, int nsets, Array< char const > const &coltype, Array< int const > const &entind, Array< double const > const &limit, Array< char const > const &settype, Array< XPRSint64 const > const &setstart, Array< int const > const &setind, Array< double const > const &refval) |
|
Used to load a mixed integer quadratic problem with quadratic constraints into the Optimizer data structure.
|
|
void |
loadMIQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, int nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef, int nentities, int nsets, Array< char const > const &coltype, Array< int const > const &entind, Array< double const > const &limit, Array< char const > const &settype, Array< int const > const &setstart, Array< int const > const &setind, Array< double const > const &refval) |
|
Used to load a MIQP problem, hence a MIP with quadratic objective coefficients, into the Optimizer data structures.
|
|
void |
loadMIQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, XPRSint64 nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef, int nentities, int nsets, Array< char const > const &coltype, Array< int const > const &entind, Array< double const > const &limit, Array< char const > const &settype, Array< XPRSint64 const > const &setstart, Array< int const > const &setind, Array< double const > const &refval) |
|
Used to load a MIQP problem, hence a MIP with quadratic objective coefficients, into the Optimizer data structures.
|
|
void |
loadModelCuts (int nrows, Array< int const > const &rowind) |
|
Specifies that a set of rows in the matrix will be treated as model cuts.
|
|
void |
loadPresolveBasis (Array< int const > const &rowstat, Array< int const > const &colstat) |
|
Loads a presolved basis from the user's areas.
|
|
void |
loadPresolveDirs (int ndirs, Array< int const > const &colind, Array< int const > const &priority, Array< char const > const &dir, Array< double const > const &uppseudo, Array< double const > const &downpseudo) |
|
Loads directives into the presolved matrix.
|
|
void |
loadQCQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, int nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef, int nqrows, Array< int const > const &qrowind, Array< int const > const &nrowqcoef, Array< int const > const &rowqcol1, Array< int const > const &rowqcol2, Array< double const > const &rowqcoef) |
|
Used to load a quadratic problem with quadratic side constraints into the Optimizer data structure.
|
|
void |
loadQCQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, XPRSint64 nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef, int nqrows, Array< int const > const &qrowind, Array< XPRSint64 const > const &nrowqcoef, Array< int const > const &rowqcol1, Array< int const > const &rowqcol2, Array< double const > const &rowqcoef) |
|
Used to load a quadratic problem with quadratic side constraints into the Optimizer data structure.
|
|
void |
loadQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< int const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, int nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef) |
|
Used to load a quadratic problem into the Optimizer data structure.
|
|
void |
loadQP (std::optional< std::string > const &probname, int ncols, int nrows, Array< char const > const &rowtype, Array< double const > const &rhs, Array< double const > const &rng, Array< double const > const &objcoef, Array< XPRSint64 const > const &start, Array< int const > const &collen, Array< int const > const &rowind, Array< double const > const &rowcoef, Array< double const > const &lb, Array< double const > const &ub, XPRSint64 nobjqcoefs, Array< int const > const &objqcol1, Array< int const > const &objqcol2, Array< double const > const &objqcoef) |
|
Used to load a quadratic problem into the Optimizer data structure.
|
|
void |
loadSecureVecs (int nrows, int ncols, Array< int const > const &rowind, Array< int const > const &colind) |
|
Allows the user to mark rows and columns in order to prevent the presolve removing these rows and columns from the matrix.
|
|
void |
lpOptimize () |
|
This function begins a search for the optimal continuous (LP) solution.
|
|
void |
lpOptimize (std::optional< std::string > const &flags) |
|
This function begins a search for the optimal continuous (LP) solution.
|
|
void |
mipOptimize () |
|
This function begins a tree search for the optimal MIP solution.
|
|
void |
mipOptimize (std::optional< std::string > const &flags) |
|
This function begins a tree search for the optimal MIP solution.
|
|
void |
msAddCustomPreset (std::optional< std::string > const &description, int preset, int maxjobs, int ninitial, Array< int const > const &colind, Array< double const > const &initial, int nintcontrols, Array< int const > const &intcontrolid, Array< int const > const &intcontrolval, int ndblcontrols, Array< int const > const &dblcontrolid, Array< double const > const &dblcontrolval, void *data) |
|
A combined version of XSLPmsaddjob and XSLPmsaddpreset.
|
|
void |
msAddJob (std::optional< std::string > const &description, int ninitial, Array< int const > const &colind, Array< double const > const &initial, int nintcontrols, Array< int const > const &intcontrolid, Array< int const > const &intcontrolval, int ndblcontrols, Array< int const > const &dblcontrolid, Array< double const > const &dblcontrolval, void *data) |
|
Adds a multistart job to the multistart pool.
|
|
void |
msAddPreset (std::optional< std::string > const &description, int preset, int maxjobs, void *data) |
|
Loads a preset of jobs into the multistart job pool.
|
|
void |
msClear () |
|
Removes all scheduled jobs from the multistart job pool.
|
|
auto |
newBranchObject (bool isOriginal) -> BranchObject * |
|
Create a new branching object.
|
|
auto |
nextIIS () -> int |
|
Continues the search for further Irreducible Infeasible Sets (IIS), or calls XPRSiisfirst (IIS ) if no IIS has been identified yet.
|
|
void |
nlpAddFormulas (int ncoefs, Array< int const > const &rowind, Array< int const > const &formulastart, int parsed, Array< int const > const &type, Array< double const > const &value) |
|
Add non-linear formulas to the SLP problem.
|
|
auto |
nlpAddUserFunction (std::optional< std::string > funcname, int nIn, int nOut, int options, MultiMapDeltaFunctor functor) -> xpress::XPRSProblem::MultiMapDeltaFunction * |
|
Register a user function of type "multi map with partial derivatives".
|
|
auto |
nlpAddUserFunction (std::optional< std::string > funcname, int nIn, int nOut, int options, MultiMapFunctor functor) -> xpress::XPRSProblem::MultiMapFunction * |
|
Register a user function of type "multi map".
|
|
auto |
nlpAddUserFunction (std::optional< std::string > funcname, int nIn, int options, VecMapDeltaFunctor functor) -> xpress::XPRSProblem::VecMapDeltaFunction * |
|
Register a user function of type "vector map with partial derivatives".
|
|
auto |
nlpAddUserFunction (std::optional< std::string > funcname, int nIn, int options, VecMapFunctor functor) -> xpress::XPRSProblem::VecMapFunction * |
|
Register a user function of type "vector map".
|
|
auto |
nlpAddUserFunction (std::optional< std::string > funcname, int options, MapDeltaFunctor functor) -> xpress::XPRSProblem::MapDeltaFunction * |
|
Register a user function of type "map with derivative".
|
|
auto |
nlpAddUserFunction (std::optional< std::string > funcname, int options, MapFunctor functor) -> xpress::XPRSProblem::MapFunction * |
|
Register a user function of type "map".
|
|
void |
nlpCalcSlacks (Array< double const > const &solution, Array< double > const &slack) |
|
Calculate the slack values for the provided solution in the non-linear problem.
|
|
void |
nlpChgFormula (int row, int parsed, Array< int const > const &type, Array< double const > const &value) |
|
Add or replace a single matrix formula using a parsed or unparsed formula.
|
|
void |
nlpChgFormulaStr (int row, std::optional< std::string > const &formula) |
|
Add or replace a single matrix formula using a character string for the formula.
|
|
void |
nlpCurrentIV () |
|
Transfer the current solution to initial values.
|
|
void |
nlpDelFormulas (int nformulas, Array< int const > const &rowind) |
|
Delete nonlinear formulas from the current problem.
|
|
void |
nlpDelUserFunction (int type) |
|
Delete a user function from the current problem.
|
|
auto |
nlpEvaluateFormula (int parsed, Array< int const > const &type, Array< double const > const &values) -> double |
|
Evaluate a formula using the current values of the variables.
|
|
void |
nlpGetFormula (int row, int parsed, int maxtypes, int *p_ntypes, Array< int > const &type, Array< double > const &value) |
|
Retrieve a single matrix formula as a formula split into tokens.
|
|
void |
nlpGetFormulaRows (int *p_nformulas, Array< int > const &rowind) |
|
Retrieve the list of positions of the nonlinear formulas in the problem.
|
|
void |
nlpGetFormulaStr (int row, char *formula, int maxbytes, int *p_nbytes) |
|
Retrieve a single matrix formula in a character string.
|
|
void |
nlpImportLibFunc (std::optional< std::string > const &libname, std::optional< std::string > const &funcname, XPRSfunctionptr *p_function, int *p_status) |
|
Imports a function from a library file to be called as a user function.
|
|
void |
nlpLoadFormulas (int nnlpcoefs, Array< int const > const &rowind, Array< int const > const &formulastart, int parsed, Array< int const > const &type, Array< double const > const &value) |
|
Load non-linear formulas into the SLP problem.
|
|
void |
nlpOptimize (std::optional< std::string > const &flags) |
|
Maximize or minimize an SLP problem.
|
|
void |
nlpPostsolveProb () |
|
Restores the problem to its pre-solve state.
|
|
void |
nlpPrintEvalInfo () |
|
Print a summary of any evaluation errors that may have occurred during solving a problem.
|
|
void |
nlpSetFunctionError () |
|
Set the function error flag for the problem.
|
|
void |
nlpSetInitVal (int nvars, Array< int const > const &colind, Array< double const > const &initial) |
|
Set the initial value of a variable.
|
|
void |
nlpValidate () |
|
Validate the feasibility of constraints in a converged solution.
|
|
void |
nlpValidateKKT (int mode, int respectbasis, int updatemult, double violtarget) |
|
Validates the first order optimality conditions also known as the Karush-Kuhn-Tucker (KKT) conditions versus the currect solution
|
|
void |
nlpValidateRow (int row) |
|
Prints an extensive analysis on a given constraint of the SLP problem.
|
|
void |
nlpValidateVector (Array< double const > const &solution, double *p_suminf, double *p_sumscaledinf, double *p_objval) |
|
Validate the feasibility of constraints for a given solution.
|
|
void |
objSA (int ncols, Array< int const > const &colind, Array< double > const &lower, Array< double > const &upper) |
|
Returns upper and lower sensitivity ranges for specified objective function coefficients.
|
|
auto |
optimize () -> int |
|
Convenience wrapper for optimize(std::optional<std::string> const &, int *, int *) .
|
|
void |
optimize (std::optional< std::string > const &flags, int *solvestatus, int *solstatus) |
|
This function begins a search for the optimal solution of the problem.
|
|
auto |
optimize (std::optional< std::string > flags) -> int |
|
Convenience wrapper for optimize(std::optional<std::string> const &, int *, int *) .
|
|
void |
pivot (int enter, int leave) |
|
Performs a simplex pivot by bringing variable enter into the basis and removing leave .
|
|
void |
postSolve () |
|
Postsolve the current matrix when it is in a presolved state.
|
|
auto |
postSolveSol (Array< double const > const &prex) -> std::vector< double > |
|
Postsolves a primal solution formulated in the presolved space into the corresponding solution formulated in the original space.
|
|
void |
presolveRow (char rowtype, int norigcoefs, Array< int const > const &origcolind, Array< double const > const &origrowcoef, double origrhs, int maxcoefs, int *p_ncoefs, Array< int > const &colind, Array< double > const &rowcoef, double *p_rhs, int *p_status) |
|
Presolves a row formulated in terms of the original variables such that it can be added to a presolved matrix.
|
|
auto |
presolveRow (xpress::SizedArray< int const > const &ind, xpress::SizedArray< double const > const &val, char type, double rhs) -> std::optional< xpress::XPRSProblem::RowInfo > |
|
Presolve a row.
|
|
auto |
presolveRow (xpress::XPRSProblem::RowInfo row) -> std::optional< xpress::XPRSProblem::RowInfo > |
|
Presolve a row.
|
|
void |
printIIS (int iis) |
|
Prints a given Irreducible Infeasible Set (IIS) in the log.
|
|
void |
readBasis () |
|
Instructs the Optimizer to read in a previously saved basis from a file.
|
|
void |
readBasis (std::optional< std::string > const &filename) |
|
Instructs the Optimizer to read in a previously saved basis from a file.
|
|
void |
readBasis (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Instructs the Optimizer to read in a previously saved basis from a file.
|
|
void |
readBinSol () |
|
Reads a solution from a binary solution file.
|
|
void |
readBinSol (std::optional< std::string > const &filename) |
|
Reads a solution from a binary solution file.
|
|
void |
readBinSol (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Reads a solution from a binary solution file.
|
|
void |
readDirs () |
|
Reads a directives file to help direct the tree search.
|
|
void |
readDirs (std::optional< std::string > const &filename) |
|
Reads a directives file to help direct the tree search.
|
|
void |
readProb (std::optional< std::string > const &filename) |
|
Reads an (X)MPS or LP format matrix from file.
|
|
void |
readProb (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Reads an (X)MPS or LP format matrix from file.
|
|
void |
readSlxSol () |
|
Reads an ASCII solution file [.slx ] created by the XPRSwriteslxsol function.
|
|
void |
readSlxSol (std::optional< std::string > const &filename) |
|
Reads an ASCII solution file [.slx ] created by the XPRSwriteslxsol function.
|
|
void |
readSlxSol (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Reads an ASCII solution file [.slx ] created by the XPRSwriteslxsol function.
|
|
void |
removeAfterObjectiveCallback (CallbackHandle const &callback) |
|
Remove an afterobjective callback.
|
|
void |
removeAfterObjectiveCallbacks () |
|
Remove all afterobjective callbacks.
|
|
void |
removeBarIterationCallback (CallbackHandle const &callback) |
|
Remove a bariteration callback.
|
|
void |
removeBarIterationCallbacks () |
|
Remove all bariteration callbacks.
|
|
void |
removeBarlogCallback (CallbackHandle const &callback) |
|
Remove a barlog callback.
|
|
void |
removeBarlogCallbacks () |
|
Remove all barlog callbacks.
|
|
void |
removeBeforeObjectiveCallback (CallbackHandle const &callback) |
|
Remove a beforeobjective callback.
|
|
void |
removeBeforeObjectiveCallbacks () |
|
Remove all beforeobjective callbacks.
|
|
void |
removeBeforeSolveCallback (CallbackHandle const &callback) |
|
Remove a beforesolve callback.
|
|
void |
removeBeforeSolveCallbacks () |
|
Remove all beforesolve callbacks.
|
|
void |
removeChangeBranchObjectCallback (CallbackHandle const &callback) |
|
Remove a changebranchobject callback.
|
|
void |
removeChangeBranchObjectCallbacks () |
|
Remove all changebranchobject callbacks.
|
|
void |
removeCheckTimeCallback (CallbackHandle const &callback) |
|
Remove a checktime callback.
|
|
void |
removeCheckTimeCallbacks () |
|
Remove all checktime callbacks.
|
|
void |
removeComputeRestartCallback (CallbackHandle const &callback) |
|
Remove a computerestart callback.
|
|
void |
removeComputeRestartCallbacks () |
|
Remove all computerestart callbacks.
|
|
void |
removeCutlogCallback (CallbackHandle const &callback) |
|
Remove a cutlog callback.
|
|
void |
removeCutlogCallbacks () |
|
Remove all cutlog callbacks.
|
|
void |
removeGapNotifyCallback (CallbackHandle const &callback) |
|
Remove a gapnotify callback.
|
|
void |
removeGapNotifyCallbacks () |
|
Remove all gapnotify callbacks.
|
|
void |
removeInfnodeCallback (CallbackHandle const &callback) |
|
Remove an infnode callback.
|
|
void |
removeInfnodeCallbacks () |
|
Remove all infnode callbacks.
|
|
void |
removeIntsolCallback (CallbackHandle const &callback) |
|
Remove an intsol callback.
|
|
void |
removeIntsolCallbacks () |
|
Remove all intsol callbacks.
|
|
void |
removeLplogCallback (CallbackHandle const &callback) |
|
Remove a lplog callback.
|
|
void |
removeLplogCallbacks () |
|
Remove all lplog callbacks.
|
|
void |
removeMessageCallback (CallbackHandle const &callback) |
|
Remove a message callback.
|
|
void |
removeMessageCallbacks () |
|
Remove all message callbacks.
|
|
void |
removeMiplogCallback (CallbackHandle const &callback) |
|
Remove a miplog callback.
|
|
void |
removeMiplogCallbacks () |
|
Remove all miplog callbacks.
|
|
void |
removeMipThreadCallback (CallbackHandle const &callback) |
|
Remove a mipthread callback.
|
|
void |
removeMipThreadCallbacks () |
|
Remove all mipthread callbacks.
|
|
void |
removeMipThreadDestroyCallback (CallbackHandle const &callback) |
|
Remove a mipthreaddestroy callback.
|
|
void |
removeMipThreadDestroyCallbacks () |
|
Remove all mipthreaddestroy callbacks.
|
|
void |
removeMsJobEndCallback (CallbackHandle const &callback) |
|
Remove a msjobend callback.
|
|
void |
removeMsJobEndCallbacks () |
|
Remove all msjobend callbacks.
|
|
void |
removeMsJobStartCallback (CallbackHandle const &callback) |
|
Remove a msjobstart callback.
|
|
void |
removeMsJobStartCallbacks () |
|
Remove all msjobstart callbacks.
|
|
void |
removeMsWinnerCallback (CallbackHandle const &callback) |
|
Remove a mswinner callback.
|
|
void |
removeMsWinnerCallbacks () |
|
Remove all mswinner callbacks.
|
|
void |
removeNewnodeCallback (CallbackHandle const &callback) |
|
Remove a newnode callback.
|
|
void |
removeNewnodeCallbacks () |
|
Remove all newnode callbacks.
|
|
void |
removeNlpCoefEvalErrorCallback (CallbackHandle const &callback) |
|
Remove a nlpcoefevalerror callback.
|
|
void |
removeNlpCoefEvalErrorCallbacks () |
|
Remove all nlpcoefevalerror callbacks.
|
|
void |
removeNodecutoffCallback (CallbackHandle const &callback) |
|
Remove a nodecutoff callback.
|
|
void |
removeNodecutoffCallbacks () |
|
Remove all nodecutoff callbacks.
|
|
void |
removeNodeLPSolvedCallback (CallbackHandle const &callback) |
|
Remove a nodelpsolved callback.
|
|
void |
removeNodeLPSolvedCallbacks () |
|
Remove all nodelpsolved callbacks.
|
|
void |
removeOptnodeCallback (CallbackHandle const &callback) |
|
Remove an optnode callback.
|
|
void |
removeOptnodeCallbacks () |
|
Remove all optnode callbacks.
|
|
void |
removePreIntsolCallback (CallbackHandle const &callback) |
|
Remove a preintsol callback.
|
|
void |
removePreIntsolCallbacks () |
|
Remove all preintsol callbacks.
|
|
void |
removePrenodeCallback (CallbackHandle const &callback) |
|
Remove a prenode callback.
|
|
void |
removePrenodeCallbacks () |
|
Remove all prenode callbacks.
|
|
void |
removePresolveCallback (CallbackHandle const &callback) |
|
Remove a presolve callback.
|
|
void |
removePresolveCallbacks () |
|
Remove all presolve callbacks.
|
|
void |
removeSlpCascadeEndCallback (CallbackHandle const &callback) |
|
Remove a slpcascadeend callback.
|
|
void |
removeSlpCascadeEndCallbacks () |
|
Remove all slpcascadeend callbacks.
|
|
void |
removeSlpCascadeStartCallback (CallbackHandle const &callback) |
|
Remove a slpcascadestart callback.
|
|
void |
removeSlpCascadeStartCallbacks () |
|
Remove all slpcascadestart callbacks.
|
|
void |
removeSlpCascadeVarCallback (CallbackHandle const &callback) |
|
Remove a slpcascadevar callback.
|
|
void |
removeSlpCascadeVarCallbacks () |
|
Remove all slpcascadevar callbacks.
|
|
void |
removeSlpCascadeVarFailCallback (CallbackHandle const &callback) |
|
Remove a slpcascadevarfail callback.
|
|
void |
removeSlpCascadeVarFailCallbacks () |
|
Remove all slpcascadevarfail callbacks.
|
|
void |
removeSlpConstructCallback (CallbackHandle const &callback) |
|
Remove a slpconstruct callback.
|
|
void |
removeSlpConstructCallbacks () |
|
Remove all slpconstruct callbacks.
|
|
void |
removeSlpDrColCallback (CallbackHandle const &callback) |
|
Remove a slpdrcol callback.
|
|
void |
removeSlpDrColCallbacks () |
|
Remove all slpdrcol callbacks.
|
|
void |
removeSlpIntSolCallback (CallbackHandle const &callback) |
|
Remove a slpintsol callback.
|
|
void |
removeSlpIntSolCallbacks () |
|
Remove all slpintsol callbacks.
|
|
void |
removeSlpIterEndCallback (CallbackHandle const &callback) |
|
Remove a slpiterend callback.
|
|
void |
removeSlpIterEndCallbacks () |
|
Remove all slpiterend callbacks.
|
|
void |
removeSlpIterStartCallback (CallbackHandle const &callback) |
|
Remove a slpiterstart callback.
|
|
void |
removeSlpIterStartCallbacks () |
|
Remove all slpiterstart callbacks.
|
|
void |
removeSlpIterVarCallback (CallbackHandle const &callback) |
|
Remove a slpitervar callback.
|
|
void |
removeSlpIterVarCallbacks () |
|
Remove all slpitervar callbacks.
|
|
void |
removeSlpPreUpdateLinearizationCallback (CallbackHandle const &callback) |
|
Remove a slppreupdatelinearization callback.
|
|
void |
removeSlpPreUpdateLinearizationCallbacks () |
|
Remove all slppreupdatelinearization callbacks.
|
|
void |
removeUserSolNotifyCallback (CallbackHandle const &callback) |
|
Remove an usersolnotify callback.
|
|
void |
removeUserSolNotifyCallbacks () |
|
Remove all usersolnotify callbacks.
|
|
auto |
repairInfeas (char penalty, char phase2, char flags, double lepref, double gepref, double lbpref, double ubpref, double delta) -> int |
|
Provides a simplified interface for XPRSrepairweightedinfeas .
|
|
auto |
repairWeightedInfeas (Array< double const > const &lepref, Array< double const > const &gepref, Array< double const > const &lbpref, Array< double const > const &ubpref, char phase2, double delta, std::optional< std::string > const &flags) -> int |
|
By relaxing a set of selected constraints and bounds of an infeasible problem, it attempts to identify a 'solution' that violates the selected set of constraints and bounds minimally, while satisfying all other constraints and bounds.
|
|
auto |
repairWeightedInfeasBounds (Array< double const > const &lepref, Array< double const > const &gepref, Array< double const > const &lbpref, Array< double const > const &ubpref, Array< double const > const &lerelax, Array< double const > const &gerelax, Array< double const > const &lbrelax, Array< double const > const &ubrelax, char phase2, double delta, std::optional< std::string > const &flags) -> int |
|
An extended version of XPRSrepairweightedinfeas that allows for bounding the level of relaxation allowed.
|
|
void |
restore () |
|
Restores the Optimizer's data structures from a file created by XPRSsave (SAVE ).
|
|
void |
restore (std::optional< std::string > const &probname) |
|
Restores the Optimizer's data structures from a file created by XPRSsave (SAVE ).
|
|
void |
restore (std::optional< std::string > const &probname, std::optional< std::string > const &flags) |
|
Restores the Optimizer's data structures from a file created by XPRSsave (SAVE ).
|
|
void |
rhsSA (int nrows, Array< int const > const &rowind, Array< double > const &lower, Array< double > const &upper) |
|
Returns upper and lower sensitivity ranges for specified right hand side (RHS) function coefficients.
|
|
void |
save () |
|
Saves the current data structures, i.e.
|
|
void |
saveAs (std::optional< std::string > const &sSaveFileName) |
|
Saves the current data structures, i.e.
|
|
void |
scale (Array< int const > const &rowscale, Array< int const > const &colscale) |
|
Re-scales the current matrix.
|
|
void |
setDblControl (int control, double value) |
|
Sets the value of a given double control parameter.
|
|
void |
setDefaultControl (int control) |
|
Sets a single control to its default value.
|
|
void |
setDefaults () |
|
Sets all controls to their default values.
|
|
auto |
setIndicator (int rowind, int colind, int complement) -> void |
|
Add a single indicator constraint.
|
|
void |
setIndicators (int nrows, Array< int const > const &rowind, Array< int const > const &colind, Array< int const > const &complement) |
|
Specifies that a set of rows in the matrix will be treated as indicator constraints during a tree search.
|
|
void |
setIntControl (int control, int value) |
|
Sets the value of a given integer control parameter.
|
|
void |
setLogFile (std::optional< std::string > const &filename) |
|
This directs all Optimizer output to a log file.
|
|
void |
setLongControl (int control, XPRSint64 value) |
|
Sets the value of a given integer control parameter.
|
|
void |
setMessageStatus (int msgcode, int status) |
|
Manages suppression of messages.
|
|
void |
setObjDblControl (int objidx, ObjControl control, double value) |
|
Sets the value of a given double control parameter associated with an objective.
|
|
auto |
setObjective (xpress::SizedArray< int const > const &ind, xpress::SizedArray< double const > const &val) -> void |
|
Set objective to a linear function.
|
|
auto |
setObjective (xpress::SizedArray< int const > const &ind, xpress::SizedArray< double const > const &val, xpress::ObjSense sense) -> void |
|
Set objective to a linear function.
|
|
void |
setObjIntControl (int objidx, ObjControl control, int value) |
|
Sets the value of a given integer control parameter associated with an objective.
|
|
void |
setProbName (std::optional< std::string > const &probname) |
|
Sets the current default problem name.
|
|
void |
setStrControl (int control, std::optional< std::string > const &value) |
|
Used to set the value of a given string control parameter.
|
|
void |
slpAddCoefs (int ncoefs, Array< int const > const &rowind, Array< int const > const &colind, Array< double const > const &factor, Array< int const > const &formulastart, int parsed, Array< int const > const &type, Array< double const > const &value) |
|
Add non-linear coefficients to the SLP problem.
|
|
void |
slpCascadeOrder () |
|
Establish a re-calculation sequence for SLP variables with determining rows.
|
|
void |
slpCascadeSol () |
|
Re-calculate consistent values for SLP variables based on the current values of the remaining variables.
|
|
void |
slpChgCascadeNLimit (int col, int limit) |
|
Set a variable specific cascade iteration limit.
|
|
void |
slpChgCoef (int row, int col, double *factor, int parsed, Array< int const > const &type, Array< double const > const &value) |
|
Add or change a single matrix coefficient using a parsed or unparsed formula.
|
|
void |
slpChgCoefStr (int row, int col, double *factor, std::optional< std::string > const &formula) |
|
Add or change a single matrix coefficient using a character string for the formula.
|
|
void |
slpChgDeltaType (int nvars, Array< int const > const &varind, Array< int const > const &deltatypes, Array< double const > const &values) |
|
Changes the type of the delta assigned to a nonlinear variable.
|
|
auto |
slpChgRowStatus (int row) -> int |
|
Change the status setting of a constraint.
|
|
void |
slpChgRowWt (int row, double *weight) |
|
Set or change the initial penalty error weight for a row.
|
|
void |
slpConstruct () |
|
Create the full augmented SLP matrix and data structures, ready for optimization.
|
|
void |
slpDelCoefs (int ncoefs, Array< int const > const &rowind, Array< int const > const &colind) |
|
Delete coefficients from the current problem.
|
|
auto |
slpEvaluateCoef (int row, int col) -> double |
|
Evaluate a coefficient using the current values of the variables.
|
|
void |
slpFixPenalties (int *p_status) |
|
Fixe the values of the error vectors.
|
|
void |
slpGetCoefFormula (int row, int col, double *p_factor, int parsed, int maxtypes, int *p_ntypes, Array< int > const &type, Array< double > const &value) |
|
Retrieve a single matrix coefficient as a formula split into tokens.
|
|
void |
slpGetCoefs (int *p_ncoefs, Array< int > const &rowind, Array< int > const &colind) |
|
Retrieve the list of positions of the nonlinear coefficients in the problem.
|
|
void |
slpGetCoefStr (int row, int col, double *p_factor, char *formula, int maxbytes, int *p_nbytes) |
|
Retrieve a single matrix coefficient as a formula in a character string.
|
|
void |
slpGetRowStatus (int row, int *p_status) |
|
Retrieve the status setting of a constraint.
|
|
auto |
slpGetRowWT (int row) -> double |
|
Get the initial penalty error weight for a row.
|
|
void |
slpLoadCoefs (int ncoefs, Array< int const > const &rowind, Array< int const > const &colind, Array< double const > const &factor, Array< int const > const &formulastart, int parsed, Array< int const > const &type, Array< double const > const &coef) |
|
Load non-linear coefficients into the SLP problem.
|
|
void |
slpReInitialize () |
|
Reset the SLP problem to match a just augmented system.
|
|
void |
slpSetDetRow (int nvars, Array< int const > const &colind, Array< int const > const &rowind) |
|
Set the determining row of a variable.
|
|
void |
slpUnConstruct () |
|
Removes the augmentation and returns the problem to its pre-linearization state.
|
|
void |
slpUpdateLinearization () |
|
Updates the current linearization.
|
|
void |
sparseBTran (Array< double > const &val, Array< int > const &ind, int *p_ncoefs) |
|
Post-multiplies a (row) vector provided by the user by the inverse of the current matrix.
|
|
void |
sparseFTran (Array< double > const &val, Array< int > const &ind, int *p_ncoefs) |
|
Pre-multiplies a (column) vector provided by the user by the inverse of the current matrix.
|
|
auto |
storeCuts (int ncuts, int nodups, Array< int const > const &cuttype, Array< char const > const &rowtype, Array< double const > const &rhs, Array< int const > const &start, Array< int const > const &colind, Array< double const > const &cutcoef) -> std::vector< XPRScut > |
|
Stores cuts into the cut pool, but does not apply them to the current node.
|
|
auto |
storeCuts (int ncuts, int nodups, Array< int const > const &cuttype, Array< char const > const &rowtype, Array< double const > const &rhs, Array< XPRSint64 const > const &start, Array< int const > const &colind, Array< double const > const &cutcoef) -> std::vector< XPRScut > |
|
Stores cuts into the cut pool, but does not apply them to the current node.
|
|
void |
strongBranch (int nbounds, Array< int const > const &colind, Array< char const > const &bndtype, Array< double const > const &bndval, int iterlim, Array< double > const &objval, Array< int > const &status) |
|
Performs strong branching iterations on all specified bound changes.
|
|
void |
strongBranchCB (int nbounds, Array< int const > const &colind, Array< char const > const &bndtype, Array< double const > const &bndval, int iterlim, Array< double > const &objval, Array< int > const &status, std::function< int(XPRSProblem &, int)> callback) |
|
Performs strong branching iterations on all specified bound changes.
|
|
void |
tune (std::optional< std::string > const &flags) |
|
This function begins a tuner session for the current problem.
|
|
void |
tuneProbSetFile (std::optional< std::string > const &setfile, int ifmip, int sense) |
|
This function begins a tuner session for a set of problems.
|
|
void |
tunerReadMethod (std::optional< std::string > const &methodfile) |
|
This function loads a user defined tuner method from the given file.
|
|
void |
tunerWriteMethod (std::optional< std::string > const &methodfile) |
|
This function writes the current tuner method to a given file or prints it to the console.
|
|
void |
unloadProb () |
|
Unloads and frees all memory associated with the current problem.
|
|
void |
writeBasis () |
|
Writes the current basis to a file for later input into the Optimizer.
|
|
void |
writeBasis (std::optional< std::string > const &filename) |
|
Writes the current basis to a file for later input into the Optimizer.
|
|
void |
writeBasis (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Writes the current basis to a file for later input into the Optimizer.
|
|
void |
writeBinSol () |
|
Writes the current MIP or LP solution to a binary solution file for later input into the Optimizer.
|
|
void |
writeBinSol (std::optional< std::string > const &filename) |
|
Writes the current MIP or LP solution to a binary solution file for later input into the Optimizer.
|
|
void |
writeBinSol (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Writes the current MIP or LP solution to a binary solution file for later input into the Optimizer.
|
|
void |
writeDirs () |
|
Writes the tree search directives from the current problem to a directives file.
|
|
void |
writeDirs (std::optional< std::string > const &filename) |
|
Writes the tree search directives from the current problem to a directives file.
|
|
void |
writeIIS (int iis, std::optional< std::string > const &filename, int filetype) |
|
Writes an LP/MPS/CSV file containing a given Irreducible Infeasible Set (IIS).
|
|
void |
writeIIS (int iis, std::optional< std::string > const &filename, int filetype, std::optional< std::string > const &flags) |
|
Writes an LP/MPS/CSV file containing a given Irreducible Infeasible Set (IIS).
|
|
void |
writeProb () |
|
Writes the current problem to an MPS or LP file.
|
|
void |
writeProb (std::optional< std::string > const &filename) |
|
Writes the current problem to an MPS or LP file.
|
|
void |
writeProb (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Writes the current problem to an MPS or LP file.
|
|
void |
writePrtSol () |
|
Writes the current solution to a fixed format ASCII file, problem_name .prt .
|
|
void |
writePrtSol (std::optional< std::string > const &filename) |
|
Writes the current solution to a fixed format ASCII file, problem_name .prt .
|
|
void |
writePrtSol (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Writes the current solution to a fixed format ASCII file, problem_name .prt .
|
|
void |
writeSlxSol () |
|
Creates an ASCII solution file (.slx ) using a similar format to MPS files.
|
|
void |
writeSlxSol (std::optional< std::string > const &filename) |
|
Creates an ASCII solution file (.slx ) using a similar format to MPS files.
|
|
void |
writeSlxSol (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Creates an ASCII solution file (.slx ) using a similar format to MPS files.
|
|
void |
writeSol () |
|
Writes the current solution to a CSV format ASCII file, problem_name.asc (and .hdr ).
|
|
void |
writeSol (std::optional< std::string > const &filename) |
|
Writes the current solution to a CSV format ASCII file, problem_name.asc (and .hdr ).
|
|
void |
writeSol (std::optional< std::string > const &filename, std::optional< std::string > const &flags) |
|
Writes the current solution to a CSV format ASCII file, problem_name.asc (and .hdr ).
|
|