All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
exprinterpret.h File Reference Detailed Descriptionmethods to interpret (evaluate) an expression tree "fast" Definition in file exprinterpret.h. #include "scip/def.h" #include "blockmemshell/memory.h" #include "nlpi/type_expr.h" #include "nlpi/type_exprinterpret.h" #include "scip/intervalarith.h" Go to the source code of this file. Function Documentation
gets name and version of expression interpreter Definition at line 1670 of file exprinterpret_cppad.cpp. Referenced by SCIP_DECL_CONSINIT(), SCIPcreate(), and SCIPnlpiOracleCreate().
gets descriptive text of expression interpreter Definition at line 1676 of file exprinterpret_cppad.cpp. Referenced by SCIPcreate().
gets capabilities of expression interpreter (using bitflags) Definition at line 1682 of file exprinterpret_cppad.cpp. References SCIP_EXPRINTCAPABILITY_FUNCVALUE, SCIP_EXPRINTCAPABILITY_GRADIENT, SCIP_EXPRINTCAPABILITY_HESSIAN, SCIP_EXPRINTCAPABILITY_INTFUNCVALUE, SCIP_EXPRINTCAPABILITY_INTGRADIENT, and SCIP_EXPRINTCAPABILITY_NONE. Referenced by addIntervalGradientEstimator(), processNlRow(), and SCIP_DECL_NLPISOLVE().
creates an expression interpreter object
Definition at line 1692 of file exprinterpret_cppad.cpp. References BMSallocMemory, NULL, SCIP_ALLOC, SCIP_NOMEMORY, SCIP_OKAY, and SCIPdebugMessage. Referenced by createCoveringProblem(), SCIPincludeConshdlrBivariate(), SCIPincludeConshdlrNonlinear(), and SCIPnlpiOracleCreate().
frees an expression interpreter object
Definition at line 1709 of file exprinterpret_cppad.cpp. References BMSfreeMemory, NULL, and SCIP_OKAY. Referenced by createCoveringProblem(), SCIP_DECL_CONSFREE(), and SCIPnlpiOracleFree().
compiles an expression tree and stores compiled data in expression tree
Definition at line 1722 of file exprinterpret_cppad.cpp. References SCIP_ExprInt::blkmem, needAlwaysRetape(), NULL, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, SCIPexprCopyDeep(), SCIPexprFreeDeep(), SCIPexprtreeGetInterpreterData(), SCIPexprtreeGetNVars(), SCIPexprtreeGetRoot(), and SCIPexprtreeSetInterpreterData(). Referenced by addIntervalGradientEstimator(), addLinearization(), computeViolation(), generate1ConvexIndefiniteUnderestimatorInTheInteriorPatternA(), generate1ConvexIndefiniteUnderestimatorInTheInteriorPatternB(), generateLinearizationCut(), generateOrthogonal_lx_ly_Underestimator(), generateOrthogonal_lx_uy_Underestimator(), generateUnderestimatorParallelYFacets(), getGradientMaxElement(), initSepaData(), processNlRow(), SCIP_DECL_CONSINITLP(), SCIPnlpiOracleAddConstraints(), SCIPnlpiOracleChgExprtree(), and SCIPnlpiOracleSetObjective().
frees interpreter data
Definition at line 1770 of file exprinterpret_cppad.cpp. References NULL, SCIP_OKAY, and SCIPexprFreeDeep(). Referenced by SCIPexprtreeFreeInterpreterData().
notify expression interpreter that a new parameterization is used this probably causes retaping by AD algorithms
Definition at line 1789 of file exprinterpret_cppad.cpp. References NULL, SCIP_OKAY, and SCIPexprtreeGetInterpreterData(). Referenced by generateConvexConcaveUnderestimator().
evaluates an expression tree
Definition at line 1808 of file exprinterpret_cppad.cpp. References eval(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPdebugMessage, SCIPerrorMessage, SCIPexprtreeGetInterpreterData(), SCIPexprtreeGetNVars(), SCIPexprtreeGetParamVals(), and SCIPexprtreeGetRoot(). Referenced by addIntervalGradientEstimator(), computeViolation(), evalFunctionValue(), generateConvexConcaveUnderestimator(), generateEstimatingHyperplane(), SCIPexprintGrad(), SCIPexprintHessianDense(), SCIPexprintHessianSparsityDense(), and SCIPnlpiOracleEvalJacobian().
evaluates an expression tree on intervals
Definition at line 1871 of file exprinterpret_cppad.cpp. References eval(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPerrorMessage, SCIPexprtreeGetInterpreterData(), SCIPexprtreeGetNVars(), SCIPexprtreeGetParamVals(), and SCIPexprtreeGetRoot(). Referenced by SCIPexprintGradInt().
computes value and gradient of an expression tree
Definition at line 1931 of file exprinterpret_cppad.cpp. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPerrorMessage, SCIPexprintEval(), SCIPexprtreeGetInterpreterData(), and SCIPexprtreeGetNVars(). Referenced by addLinearization(), computeViolation(), evalFunctionGradient(), generate1ConvexIndefiniteUnderestimatorAtBoundary(), generate1ConvexIndefiniteUnderestimatorInTheInteriorPatternA(), generate1ConvexIndefiniteUnderestimatorInTheInteriorPatternB(), generateConvexConcaveUnderestimator(), generateLinearizationCut(), generateOrthogonal_lx_ly_Underestimator(), generateOrthogonal_lx_uy_Underestimator(), generateUnderestimatorParallelYFacets(), getGradientMaxElement(), lifting(), SCIPnlpiOracleEvalJacobian(), and solveDerivativeEquation().
computes interval value and interval gradient of an expression tree
Definition at line 1975 of file exprinterpret_cppad.cpp. References NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPerrorMessage, SCIPexprintEvalInt(), SCIPexprtreeGetInterpreterData(), and SCIPexprtreeGetNVars(). Referenced by addIntervalGradientEstimator().
gives sparsity pattern of hessian NOTE: this function might be replaced later by something nicer Since the AD code might need to do a forward sweep, you should pass variable values in here.
Definition at line 2021 of file exprinterpret_cppad.cpp. References NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_Real, SCIPdebugMessage, SCIPerrorMessage, SCIPexprintEval(), SCIPexprtreeGetInterpreterData(), SCIPexprtreeGetNVars(), and TRUE. Referenced by hessLagSparsitySetNzFlagForExprtree(), initSepaData(), and processNlRow().
computes value and dense hessian of an expression tree the full hessian is computed (lower left and upper right triangle)
Definition at line 2090 of file exprinterpret_cppad.cpp. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPerrorMessage, SCIPexprintEval(), SCIPexprtreeGetInterpreterData(), and SCIPexprtreeGetNVars(). Referenced by generate1ConvexIndefiniteUnderestimator(), hessLagAddExprtree(), and solveDerivativeEquation(). |