Detailed Description
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_datatree.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.
Function Documentation
◆ SCIPnlhdlrCreate()
| 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
- Parameters
-
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 354 of file nlhdlr.c.
References FALSE, NULL, paramname, SCIP_CALL, SCIP_CALL_FINALLY, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPaddBoolParam(), SCIPallocClearBlockMemory, SCIPcreateClock(), SCIPduplicateMemoryArray, SCIPfreeMemoryArray, SCIPsnprintf(), and TRUE.
Referenced by SCIPincludeNlhdlrNonlinear().
◆ SCIPnlhdlrFree()
| SCIP_RETCODE SCIPnlhdlrFree | ( | SCIP * | scip, |
| SCIP_NLHDLR ** | nlhdlr | ||
| ) |
frees a nonlinear handler
- Parameters
-
scip SCIP data structure nlhdlr pointer to nonlinear handler to be freed
Definition at line 402 of file nlhdlr.c.
References SCIP_Nlhdlr::data, NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemory, SCIPfreeClock(), SCIPfreeMemory, and SCIPfreeMemoryNull.
Referenced by SCIP_DECL_CONSFREE().
◆ SCIP_DECL_NLHDLRCOPYHDLR()
| SCIP_DECL_NLHDLRCOPYHDLR | ( | SCIPnlhdlrCopyhdlr | ) |
◆ SCIP_DECL_NLHDLRFREEEXPRDATA()
| SCIP_DECL_NLHDLRFREEEXPRDATA | ( | SCIPnlhdlrFreeexprdata | ) |
◆ SCIP_DECL_NLHDLRINIT()
| SCIP_DECL_NLHDLRINIT | ( | SCIPnlhdlrInit | ) |
call the initialization callback of a nonlinear handler
Definition at line 458 of file nlhdlr.c.
References 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()
| SCIP_DECL_NLHDLREXIT | ( | SCIPnlhdlrExit | ) |
◆ SCIP_DECL_NLHDLRDETECT()
| SCIP_DECL_NLHDLRDETECT | ( | SCIPnlhdlrDetect | ) |
call the detect callback of a nonlinear handler
Definition at line 499 of file nlhdlr.c.
References SCIP_Nlhdlr::detecttime, SCIP_Nlhdlr::ndetections, SCIP_Nlhdlr::ndetectionslast, NULL, SCIP_CALL, SCIP_NLHDLR_METHOD_NONE, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLREVALAUX()
| SCIP_DECL_NLHDLREVALAUX | ( | SCIPnlhdlrEvalaux | ) |
◆ SCIP_DECL_NLHDLRINTEVAL()
| SCIP_DECL_NLHDLRINTEVAL | ( | SCIPnlhdlrInteval | ) |
call the interval evaluation callback of a nonlinear handler
Definition at line 532 of file nlhdlr.c.
References SCIP_Nlhdlr::intevaltime, SCIP_Nlhdlr::nintevalcalls, NULL, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLRREVERSEPROP()
| SCIP_DECL_NLHDLRREVERSEPROP | ( | SCIPnlhdlrReverseprop | ) |
call the reverse propagation callback of a nonlinear handler
Definition at line 551 of file nlhdlr.c.
References FALSE, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::ndomreds, SCIP_Nlhdlr::npropcalls, NULL, SCIP_Nlhdlr::proptime, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLRINITSEPA()
| SCIP_DECL_NLHDLRINITSEPA | ( | SCIPnlhdlrInitsepa | ) |
call the separation initialization callback of a nonlinear handler
Definition at line 581 of file nlhdlr.c.
References SCIP_Nlhdlr::enfotime, FALSE, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::nenfocalls, NULL, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLREXITSEPA()
| SCIP_DECL_NLHDLREXITSEPA | ( | SCIPnlhdlrExitsepa | ) |
call the separation deinitialization callback of a nonlinear handler
Definition at line 606 of file nlhdlr.c.
References SCIP_Nlhdlr::enfotime, NULL, SCIP_CALL, SCIP_OKAY, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLRENFO()
| SCIP_DECL_NLHDLRENFO | ( | SCIPnlhdlrEnfo | ) |
call the enforcement callback of a nonlinear handler
Definition at line 623 of file nlhdlr.c.
References SCIP_Nlhdlr::enfotime, SCIP_Nlhdlr::nbranchscores, SCIP_Nlhdlr::ncutoffs, SCIP_Nlhdlr::ndomreds, SCIP_Nlhdlr::nenfocalls, SCIP_Nlhdlr::nseparated, NULL, SCIP_BRANCHED, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_Real, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLRESTIMATE()
| SCIP_DECL_NLHDLRESTIMATE | ( | SCIPnlhdlrEstimate | ) |
call the estimator callback of a nonlinear handler
Definition at line 676 of file nlhdlr.c.
References SCIP_Nlhdlr::enfotime, FALSE, SCIP_Nlhdlr::nenfocalls, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPstartClock(), and SCIPstopClock().
◆ SCIP_DECL_NLHDLRSOLLINEARIZE()
| SCIP_DECL_NLHDLRSOLLINEARIZE | ( | SCIPnlhdlrSollinearize | ) |
◆ SCIPnlhdlrResetNDetectionslast()
| void SCIPnlhdlrResetNDetectionslast | ( | SCIP_NLHDLR * | nlhdlr | ) |
reset number of detections counter for last round
- Parameters
-
nlhdlr nonlinear handler
Definition at line 726 of file nlhdlr.c.
References SCIP_Nlhdlr::ndetectionslast, and NULL.
◆ SCIPnlhdlrIncrementNCutoffs()
| void SCIPnlhdlrIncrementNCutoffs | ( | SCIP_NLHDLR * | nlhdlr | ) |
increments number of cutoffs in statistics
- Parameters
-
nlhdlr nonlinear handler
Definition at line 735 of file nlhdlr.c.
References SCIP_Nlhdlr::ncutoffs, and NULL.
◆ SCIPnlhdlrIncrementNSeparated()
| void SCIPnlhdlrIncrementNSeparated | ( | SCIP_NLHDLR * | nlhdlr | ) |
increments number of separations in statistics
- Parameters
-
nlhdlr nonlinear handler
Definition at line 744 of file nlhdlr.c.
References SCIP_Nlhdlr::nseparated, and NULL.
◆ SCIPnlhdlrPrintStatistics()
| void SCIPnlhdlrPrintStatistics | ( | SCIP * | scip, |
| SCIP_NLHDLR ** | nlhdlrs, | ||
| int | nnlhdlrs, | ||
| FILE * | file | ||
| ) |
print statistics for nonlinear handlers
- Parameters
-
scip SCIP data structure nlhdlrs nonlinear handlers nnlhdlrs number of nonlinear handlers file file handle, or NULL for standard out
Definition at line 753 of file nlhdlr.c.
References SCIPgetClockTime(), and SCIPinfoMessage().
Referenced by SCIP_DECL_TABLEOUTPUT().
◆ SCIPnlhdlrCollectStatistics()
| SCIP_RETCODE SCIPnlhdlrCollectStatistics | ( | SCIP * | scip, |
| SCIP_NLHDLR ** | nlhdlrs, | ||
| int | nnlhdlrs, | ||
| SCIP_DATATREE * | datatree | ||
| ) |
collect statistics for nonlinear handlers
- Parameters
-
scip SCIP data structure nlhdlrs nonlinear handlers nnlhdlrs number of nonlinear handlers datatree datatree where to add statistics
Definition at line 797 of file nlhdlr.c.
References SCIP_CALL, SCIP_OKAY, SCIPcreateDatatreeInTree(), SCIPgetClockTime(), SCIPinsertDatatreeLong(), SCIPinsertDatatreeReal(), and SCIPinsertDatatreeString().
Referenced by SCIP_DECL_TABLECOLLECT().