nlhdlr_soc.h
Go to the documentation of this file.
24 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
50 * This nonlinear handler detects second-order cone constraints in the extended formulation and provides specialized separation functionality.
55 /** checks whether constraint is SOC representable in original variables and returns the SOC representation
59 * where \f$n+1 = \text{nterms}\f$ and the inequality type is given by sidetype (`SCIP_SIDETYPE_RIGHT` if inequality
62 * For each term (i.e. for each \f$i\f$ in the above notation as well as \f$n+1\f$), the constant \f$\beta_i\f$ is given by the
63 * corresponding element `offsets[i-1]` and `termbegins[i-1]` is the starting position of the term in arrays
66 * Arrays `transcoefs` and `transcoefsidx` have size `termbegins[nterms]` and define the linear expressions \f$v_i^T x\f$
68 * `termbegins[i-1]...termbegins[i]` of `transcoefs` and `transcoefsidx`. There may be no nonzeroes for some term (i.e.,
69 * constant terms are possible). `transcoefs` contains the coefficients \f$v_i\f$ and `transcoefsidx` contains positions of
72 * The `vars` array has size `nvars` and contains \f$x\f$ variables; each variable is included at most once.
76 * This function uses the methods that are used in the detection algorithm of the SOC nonlinear handler.
82 SCIP_Bool compeigenvalues, /**< whether eigenvalues should be computed to detect complex cases */
Definition: struct_scip.h:59
Definition: struct_var.h:198
void SCIPfreeSOCArraysNonlinear(SCIP *scip, SCIP_VAR ***vars, SCIP_Real **offsets, SCIP_Real **transcoefs, int **transcoefsidx, int **termbegins, int nvars, int nterms)
Definition: nlhdlr_soc.c:2814
Definition: struct_cons.h:37
SCIP_RETCODE SCIPisSOCNonlinear(SCIP *scip, SCIP_CONS *cons, SCIP_Bool compeigenvalues, SCIP_Bool *success, SCIP_SIDETYPE *sidetype, SCIP_VAR ***vars, SCIP_Real **offsets, SCIP_Real **transcoefs, int **transcoefsidx, int **termbegins, int *nvars, int *nterms)
Definition: nlhdlr_soc.c:2724
Definition: objbenders.h:33
SCIP callable library.