|
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 1732 of file exprinterpret_cppad.cpp. Referenced by SCIP_DECL_CONSINIT(), SCIPcreate(), and SCIPnlpiOracleCreate().
gets descriptive text of expression interpreter Definition at line 1738 of file exprinterpret_cppad.cpp. Referenced by SCIPcreate().
gets capabilities of expression interpreter (using bitflags) Definition at line 1744 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 1754 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 1771 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 1784 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 1832 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 notify expression interpreter that a new parameterization is used This probably causes retaping by AD algorithms.
Definition at line 1852 of file exprinterpret_cppad.cpp. References NULL, SCIP_OKAY, and SCIPexprtreeGetInterpreterData(). Referenced by generateConvexConcaveUnderestimator().
evaluates an expression tree
Definition at line 1871 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 1933 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 1993 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 2037 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. 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 2084 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). computes value and dense hessian of an expression tree the full hessian is computed (lower left and upper right triangle)
Definition at line 2154 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(). |