functions for nonlinearity handlers of nonlinear constraint handler
Definition in file nlhdlr.c.
#include <assert.h>
#include <string.h>
#include "scip/pub_nlhdlr.h"
#include "scip/nlhdlr.h"
#include "scip/struct_nlhdlr.h"
#include "scip/scip_timing.h"
#include "scip/scip_mem.h"
#include "scip/scip_param.h"
#include "scip/scip_message.h"
#include "scip/pub_message.h"
#include "scip/pub_misc.h"
Go to the source code of this file.
SCIP_RETCODE SCIPnlhdlrCreate | ( | SCIP * | scip, |
SCIP_NLHDLR ** | nlhdlr, | ||
const char * | name, | ||
const char * | desc, | ||
int | detectpriority, | ||
int | enfopriority, | ||
SCIP_DECL_NLHDLRDETECT((*detect)) | , | ||
SCIP_DECL_NLHDLREVALAUX((*evalaux)) | , | ||
SCIP_NLHDLRDATA * | nlhdlrdata ) |
creates a nonlinear handler
scip | SCIP data structure |
nlhdlr | buffer to store pointer to created nonlinear handler |
name | name of nonlinear handler (must not be NULL) |
desc | description of nonlinear handler (can be NULL) |
detectpriority | detection priority of nonlinear handler |
enfopriority | enforcement priority of nonlinear handler |
nlhdlrdata | data of nonlinear handler (can be NULL) |
Definition at line 353 of file nlhdlr.c.
References assert(), FALSE, NULL, paramname, SCIP_CALL, SCIP_CALL_FINALLY, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPaddBoolParam(), SCIPallocClearBlockMemory, SCIPcreateClock(), SCIPduplicateMemoryArray, SCIPfreeMemoryArray, SCIPsnprintf(), and TRUE.
Referenced by SCIPincludeNlhdlrNonlinear().
SCIP_RETCODE SCIPnlhdlrFree | ( | SCIP * | scip, |
SCIP_NLHDLR ** | nlhdlr ) |
frees a nonlinear handler
scip | SCIP data structure |
nlhdlr | pointer to nonlinear handler to be freed |
Definition at line 401 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::data, NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemory, SCIPfreeClock(), SCIPfreeMemory, and SCIPfreeMemoryNull.
Referenced by SCIP_DECL_CONSFREE().
SCIP_DECL_NLHDLRCOPYHDLR | ( | SCIPnlhdlrCopyhdlr | ) |
SCIP_DECL_NLHDLRFREEEXPRDATA | ( | SCIPnlhdlrFreeexprdata | ) |
SCIP_DECL_NLHDLRINIT | ( | SCIPnlhdlrInit | ) |
call the initialization callback of a nonlinear handler
Definition at line 457 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::detecttime, SCIP_Nlhdlr::enfotime, SCIP_Nlhdlr::intevaltime, SCIP_Nlhdlr::nbranchscores, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::ndetections, SCIP_Nlhdlr::ndetectionslast, SCIP_Nlhdlr::ndomreds, SCIP_Nlhdlr::nenfocalls, SCIP_Nlhdlr::nintevalcalls, SCIP_Nlhdlr::npropcalls, SCIP_Nlhdlr::nseparated, NULL, SCIP_Nlhdlr::proptime, SCIP_CALL, SCIP_OKAY, and SCIPresetClock().
SCIP_DECL_NLHDLREXIT | ( | SCIPnlhdlrExit | ) |
SCIP_DECL_NLHDLRDETECT | ( | SCIPnlhdlrDetect | ) |
call the detect callback of a nonlinear handler
Definition at line 498 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::detecttime, SCIP_Nlhdlr::ndetections, SCIP_Nlhdlr::ndetectionslast, NULL, SCIP_CALL, SCIP_NLHDLR_METHOD_NONE, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
SCIP_DECL_NLHDLREVALAUX | ( | SCIPnlhdlrEvalaux | ) |
SCIP_DECL_NLHDLRINTEVAL | ( | SCIPnlhdlrInteval | ) |
call the interval evaluation callback of a nonlinear handler
Definition at line 531 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::intevaltime, SCIP_Nlhdlr::nintevalcalls, NULL, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
SCIP_DECL_NLHDLRREVERSEPROP | ( | SCIPnlhdlrReverseprop | ) |
call the reverse propagation callback of a nonlinear handler
Definition at line 550 of file nlhdlr.c.
References assert(), FALSE, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::ndomreds, SCIP_Nlhdlr::npropcalls, NULL, SCIP_Nlhdlr::proptime, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
SCIP_DECL_NLHDLRINITSEPA | ( | SCIPnlhdlrInitsepa | ) |
call the separation initialization callback of a nonlinear handler
Definition at line 580 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::enfotime, FALSE, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::nenfocalls, NULL, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
SCIP_DECL_NLHDLREXITSEPA | ( | SCIPnlhdlrExitsepa | ) |
call the separation deinitialization callback of a nonlinear handler
Definition at line 605 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::enfotime, NULL, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
SCIP_DECL_NLHDLRENFO | ( | SCIPnlhdlrEnfo | ) |
call the enforcement callback of a nonlinear handler
Definition at line 622 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::enfotime, SCIP_Nlhdlr::nbranchscores, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::ndomreds, SCIP_Nlhdlr::nenfocalls, SCIP_Nlhdlr::nseparated, NULL, result, SCIP_BRANCHED, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_Real, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPstartClock(), SCIPstopClock(), and sol.
SCIP_DECL_NLHDLRESTIMATE | ( | SCIPnlhdlrEstimate | ) |
call the estimator callback of a nonlinear handler
Definition at line 675 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::enfotime, FALSE, SCIP_Nlhdlr::nenfocalls, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPstartClock(), SCIPstopClock(), and sol.
SCIP_DECL_NLHDLRSOLLINEARIZE | ( | SCIPnlhdlrSollinearize | ) |
void SCIPnlhdlrResetNDetectionslast | ( | SCIP_NLHDLR * | nlhdlr | ) |
reset number of detections counter for last round
nlhdlr | nonlinear handler |
Definition at line 725 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::ndetectionslast, and NULL.
void SCIPnlhdlrIncrementNCutoffs | ( | SCIP_NLHDLR * | nlhdlr | ) |
increments number of cutoffs in statistics
nlhdlr | nonlinear handler |
Definition at line 734 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::ncutoffs, and NULL.
void SCIPnlhdlrIncrementNSeparated | ( | SCIP_NLHDLR * | nlhdlr | ) |
increments number of separations in statistics
nlhdlr | nonlinear handler |
Definition at line 743 of file nlhdlr.c.
References assert(), SCIP_Nlhdlr::nseparated, and NULL.
void SCIPnlhdlrPrintStatistics | ( | SCIP * | scip, |
SCIP_NLHDLR ** | nlhdlrs, | ||
int | nnlhdlrs, | ||
FILE * | file ) |
print statistics for nonlinear handlers
scip | SCIP data structure |
nlhdlrs | nonlinear handlers |
nnlhdlrs | number of nonlinear handlers |
file | file handle, or NULL for standard out |
Definition at line 752 of file nlhdlr.c.
References i, SCIPgetClockTime(), and SCIPinfoMessage().
Referenced by SCIP_DECL_TABLEOUTPUT().