assert(lincoef !=
NULL);
75assert(linconstant !=
NULL);
76assert(success !=
NULL);
93coef = (exp(ub) - exp(lb)) / (ub - lb);
94constant = exp(ub) - coef * ub;
104*linconstant += constant;
122assert(lincoef !=
NULL);
123assert(linconstant !=
NULL);
124assert(success !=
NULL);
134coef = exp(refpoint);
135constant = exp(refpoint) * (1.0 - refpoint);
144coef = (M_E - 1.0) * exp(f);
145constant = exp(f) - f * coef;
155*linconstant += constant;
174assert(expr !=
NULL);
175assert(simplifiedexpr !=
NULL);
179assert(child !=
NULL);
189*simplifiedexpr = expr;
212assert(targetexprdata !=
NULL);
213assert(sourceexpr !=
NULL);
216*targetexprdata =
NULL;
225assert(expr !=
NULL);
238assert(expr !=
NULL);
243assert(childexpr !=
NULL);
247assert(*expr !=
NULL);
262assert(expr !=
NULL);
276assert(expr !=
NULL);
277assert(childidx == 0);
292assert(expr !=
NULL);
311assert(expr !=
NULL);
314assert(coefs !=
NULL);
315assert(constant !=
NULL);
316assert(islocal !=
NULL);
317assert(branchcand !=
NULL);
318assert(*branchcand ==
TRUE);
319assert(success !=
NULL);
327 addExpSecant(
scip, localbounds[0].inf, localbounds[0].sup, coefs, constant, success);
334*branchcand =
FALSE;
353assert(expr !=
NULL);
359assert(child !=
NULL);
373refpointsunder[0] = (7.0 * lbfinite + ubfinite) / 8.0;
374refpointsunder[1] = (lbfinite + ubfinite) / 2.0;
375refpointsunder[2] = (lbfinite + 7.0 * ubfinite) / 8.0;
379 for( i = 0; i < 4; ++i )
381 if( !overest[i] && overestimate )
389coefs[*nreturned][0] = 0.0;
390constant[*nreturned] = 0.0;
401 addExpSecant(
scip, lb, ub, coefs[*nreturned], &constant[*nreturned], &success);
415assert(expr !=
NULL);
436assert(expr !=
NULL);
438assert(hashkey !=
NULL);
439assert(childrenhashes !=
NULL);
442*hashkey ^= childrenhashes[0];
452assert(expr !=
NULL);
453assert(childcurv !=
NULL);
454assert(success !=
NULL);
474assert(expr !=
NULL);
475assert(result !=
NULL);
476assert(childidx == 0);
492assert(exprhdlr !=
NULL);
515 void* ownercreatedata
518assert(expr !=
NULL);
519assert(child !=
NULL);
533assert(expr !=
NULL);
#define SCIP_INTERVAL_INFINITY
static SCIP_DECL_EXPREVAL(evalExp)
static SCIP_DECL_EXPRHASH(hashExp)
static SCIP_DECL_EXPRINITESTIMATES(initestimatesExp)
static void addExpSecant(SCIP *scip, SCIP_Real lb, SCIP_Real ub, SCIP_Real *lincoef, SCIP_Real *linconstant, SCIP_Bool *success)
static SCIP_DECL_EXPRINTEVAL(intevalExp)
static SCIP_DECL_EXPRSIMPLIFY(simplifyExp)
static SCIP_DECL_EXPRREVERSEPROP(reversepropExp)
static SCIP_DECL_EXPRBWDIFF(bwdiffExp)
static SCIP_DECL_EXPRCURVATURE(curvatureExp)
static SCIP_DECL_EXPRCOPYDATA(copydataExp)
static SCIP_DECL_EXPRPARSE(parseExp)
static SCIP_DECL_EXPRFREEDATA(freedataExp)
static SCIP_DECL_EXPRESTIMATE(estimateExp)
static SCIP_DECL_EXPRCOPYHDLR(copyhdlrExp)
#define EXPRHDLR_PRECEDENCE
static void addExpLinearization(SCIP *scip, SCIP_Real refpoint, SCIP_Bool isint, SCIP_Real *lincoef, SCIP_Real *linconstant, SCIP_Bool *success)
static SCIP_DECL_EXPRMONOTONICITY(monotonicityExp)
exponential expression handler
constant value expression handler
SCIP_Bool SCIPisExprExp(SCIP *scip, SCIP_EXPR *expr)
SCIP_RETCODE SCIPcreateExprExp(SCIP *scip, SCIP_EXPR **expr, SCIP_EXPR *child, SCIP_DECL_EXPR_OWNERCREATE((*ownercreate)), void *ownercreatedata)
SCIP_RETCODE SCIPcreateExprValue(SCIP *scip, SCIP_EXPR **expr, SCIP_Real value, SCIP_DECL_EXPR_OWNERCREATE((*ownercreate)), void *ownercreatedata)
SCIP_RETCODE SCIPincludeExprhdlrExp(SCIP *scip)
const char * SCIPexprhdlrGetName(SCIP_EXPRHDLR *exprhdlr)
void SCIPexprhdlrSetCopyFreeData(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRCOPYDATA((*copydata)), SCIP_DECL_EXPRFREEDATA((*freedata)))
void SCIPexprhdlrSetHash(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRHASH((*hash)))
void SCIPexprhdlrSetCopyFreeHdlr(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRCOPYHDLR((*copyhdlr)), SCIP_DECL_EXPRFREEHDLR((*freehdlr)))
void SCIPexprhdlrSetDiff(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRBWDIFF((*bwdiff)), SCIP_DECL_EXPRFWDIFF((*fwdiff)), SCIP_DECL_EXPRBWFWDIFF((*bwfwdiff)))
void SCIPexprhdlrSetReverseProp(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRREVERSEPROP((*reverseprop)))
void SCIPexprhdlrSetParse(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRPARSE((*parse)))
void SCIPexprhdlrSetEstimate(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRINITESTIMATES((*initestimates)), SCIP_DECL_EXPRESTIMATE((*estimate)))
void SCIPexprhdlrSetMonotonicity(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRMONOTONICITY((*monotonicity)))
void SCIPexprhdlrSetIntEval(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRINTEVAL((*inteval)))
void SCIPexprhdlrSetCurvature(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRCURVATURE((*curvature)))
SCIP_RETCODE SCIPincludeExprhdlr(SCIP *scip, SCIP_EXPRHDLR **exprhdlr, const char *name, const char *desc, unsigned int precedence, SCIP_DECL_EXPREVAL((*eval)), SCIP_EXPRHDLRDATA *data)
SCIP_EXPRHDLR * SCIPfindExprhdlr(SCIP *scip, const char *name)
void SCIPexprhdlrSetSimplify(SCIP_EXPRHDLR *exprhdlr, SCIP_DECL_EXPRSIMPLIFY((*simplify)))
SCIP_RETCODE SCIPcreateExpr(SCIP *scip, SCIP_EXPR **expr, SCIP_EXPRHDLR *exprhdlr, SCIP_EXPRDATA *exprdata, int nchildren, SCIP_EXPR **children, SCIP_DECL_EXPR_OWNERCREATE((*ownercreate)), void *ownercreatedata)
void SCIPexprSetData(SCIP_EXPR *expr, SCIP_EXPRDATA *exprdata)
int SCIPexprGetNChildren(SCIP_EXPR *expr)
SCIP_Bool SCIPexprIsIntegral(SCIP_EXPR *expr)
SCIP_Bool SCIPisExprValue(SCIP *scip, SCIP_EXPR *expr)
SCIP_RETCODE SCIPreleaseExpr(SCIP *scip, SCIP_EXPR **expr)
SCIP_EXPRDATA * SCIPexprGetData(SCIP_EXPR *expr)
SCIP_RETCODE SCIPparseExpr(SCIP *scip, SCIP_EXPR **expr, const char *exprstr, const char **finalpos, SCIP_DECL_EXPR_OWNERCREATE((*ownercreate)), void *ownercreatedata)
SCIP_Real SCIPgetValueExprValue(SCIP_EXPR *expr)
SCIP_Real SCIPexprGetEvalValue(SCIP_EXPR *expr)
SCIP_EXPR ** SCIPexprGetChildren(SCIP_EXPR *expr)
SCIP_INTERVAL SCIPexprGetActivity(SCIP_EXPR *expr)
void SCIPcaptureExpr(SCIP_EXPR *expr)
SCIP_EXPRHDLR * SCIPexprGetHdlr(SCIP_EXPR *expr)
SCIP_Real SCIPintervalGetInf(SCIP_INTERVAL interval)
SCIP_Bool SCIPintervalIsEmpty(SCIP_Real infinity, SCIP_INTERVAL operand)
void SCIPintervalLog(SCIP_Real infinity, SCIP_INTERVAL *resultant, SCIP_INTERVAL operand)
SCIP_Real SCIPintervalGetSup(SCIP_INTERVAL interval)
void SCIPintervalExp(SCIP_Real infinity, SCIP_INTERVAL *resultant, SCIP_INTERVAL operand)
void SCIPintervalSetEmpty(SCIP_INTERVAL *resultant)
SCIP_Bool SCIPisGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
SCIP_Bool SCIPisIntegral(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
SCIP_Real SCIPfloor(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisInfinity(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
#define SCIP_DECL_EXPR_OWNERCREATE(x)
enum SCIP_Retcode SCIP_RETCODE
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4