Detailed Description
bilinear term structure
This can represent a product which
- explicitly exists in the problem and is under- and/or overestimated by a single auxiliary variable stored as
var
in the unionaux
(casenauxexprs
= 0) or - is involved in bilinear relations implicitly given by linear constraints with binary variables, and is under- and/or overestimated by linear expression(s) stored as
exprs
in the unionaux
(casenauxexprs
> 0).
An explicitly existing product can also be involved in implicit relations, then it will be stored as in the second case.
Definition at line 78 of file cons_nonlinear.h.
#include <cons_nonlinear.h>
Data Fields | |
SCIP_VAR * | x |
SCIP_VAR * | y |
union { | |
SCIP_CONSNONLINEAR_AUXEXPR ** exprs | |
SCIP_VAR * var | |
} | aux |
int | nauxexprs |
int | auxexprssize |
int | nlockspos |
int | nlocksneg |
SCIP_Bool | existing |
Field Documentation
◆ x
SCIP_VAR* SCIP_ConsNonlinear_BilinTerm::x |
first variable
Definition at line 80 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), SCIP_DECL_HASHKEYEQ(), SCIP_DECL_HASHKEYVAL(), SCIPgetBilinTermIdxNonlinear(), and SCIPinsertBilinearTermImplicitNonlinear().
◆ y
SCIP_VAR* SCIP_ConsNonlinear_BilinTerm::y |
second variable
Definition at line 81 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), SCIP_DECL_HASHKEYEQ(), SCIP_DECL_HASHKEYVAL(), SCIPgetBilinTermIdxNonlinear(), and SCIPinsertBilinearTermImplicitNonlinear().
◆ exprs
SCIP_CONSNONLINEAR_AUXEXPR** SCIP_ConsNonlinear_BilinTerm::exprs |
auxiliary expressions for the implicit product of x and y
Definition at line 84 of file cons_nonlinear.h.
Referenced by addRltTerm(), bilinearTermsInsertEntry(), bilinTermAddAuxExpr(), createSepaData(), getBestEstimators(), markRowsXj(), SCIPinsertBilinearTermImplicitNonlinear(), and separateMcCormickImplicit().
◆ var
SCIP_VAR* SCIP_ConsNonlinear_BilinTerm::var |
auxiliary variable for the explicit product of x and y
Definition at line 85 of file cons_nonlinear.h.
Referenced by addRltTerm(), bilinearTermsInsertEntry(), createSepaData(), isAcceptableRow(), markRowsXj(), SCIPinsertBilinearTermExistingNonlinear(), and SCIPinsertBilinearTermImplicitNonlinear().
◆
union { ... } SCIP_ConsNonlinear_BilinTerm::aux |
◆ nauxexprs
int SCIP_ConsNonlinear_BilinTerm::nauxexprs |
number of aux.exprs (0 for products without implicit relations)
Definition at line 87 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), bilinTermAddAuxExpr(), createSepaData(), getBestEstimators(), isAcceptableRow(), SCIPinsertBilinearTermExistingNonlinear(), and SCIPinsertBilinearTermImplicitNonlinear().
◆ auxexprssize
int SCIP_ConsNonlinear_BilinTerm::auxexprssize |
size of the aux.exprs array
Definition at line 88 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), and bilinTermAddAuxExpr().
◆ nlockspos
int SCIP_ConsNonlinear_BilinTerm::nlockspos |
number of positive expression locks
Definition at line 89 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), and SCIPinsertBilinearTermImplicitNonlinear().
◆ nlocksneg
int SCIP_ConsNonlinear_BilinTerm::nlocksneg |
number of negative expression locks
Definition at line 90 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), and SCIPinsertBilinearTermImplicitNonlinear().
◆ existing
SCIP_Bool SCIP_ConsNonlinear_BilinTerm::existing |
does the product exist explicitly in the problem?
Definition at line 91 of file cons_nonlinear.h.
Referenced by bilinearTermsInsertEntry(), markRowsXj(), and SCIPinsertBilinearTermImplicitNonlinear().