methods and files provided by the default NLP solver interfaces of SCIP
A detailed description what a NLP solver interface does and how to add a NLP solver interface to SCIP can be found here.
Modules | |
Inclusion methods | |
methods to include specific NLP solver interfaces into SCIP | |
Files | |
file | nlpi_ipopt.cpp |
Ipopt NLP interface. | |
file | nlpi_ipopt.h |
Ipopt NLP interface. | |
SCIP_DECL_SORTPTRCOMP | ( | SCIPnlpiComp | ) |
creates an NLP solver interface
nlpi | pointer to NLP interface data structure |
name | name of NLP interface |
description | description of NLP interface |
priority | priority of NLP interface |
nlpidata | NLP interface local data |
Definition at line 40 of file nlpi.c.
References BMSallocMemory, BMSduplicateMemoryArray, NULL, SCIP_ALLOC, and SCIP_OKAY.
Referenced by SCIPcreateNlpSolverIpopt().
SCIP_RETCODE SCIPnlpiCopy | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPI * | sourcenlpi, | ||
SCIP_NLPI ** | targetnlpi | ||
) |
SCIP_RETCODE SCIPnlpiFree | ( | SCIP_NLPI ** | nlpi | ) |
frees NLPI user data
nlpi | pointer to NLPI data structure |
Definition at line 181 of file nlpi.c.
References BMSfreeMemory, BMSfreeMemoryArray, NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by SCIPsetFree().
void* SCIPnlpiGetSolverPointer | ( | SCIP_NLPI * | nlpi | ) |
SCIP_RETCODE SCIPnlpiCreateProblem | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM ** | problem, | ||
const char * | name | ||
) |
creates a problem instance
nlpi | pointer to NLPI datastructure |
problem | pointer to store problem data |
name | name of problem, can be NULL |
Definition at line 211 of file nlpi.c.
References NULL.
Referenced by applyNlobbt(), computeInteriorPoint(), SCIP_DECL_RELAXEXEC(), SCIP_DECL_SEPAEXECLP(), and SCIPnlpCreate().
SCIP_RETCODE SCIPnlpiFreeProblem | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM ** | problem | ||
) |
frees a problem instance
nlpi | pointer to NLPI datastructure |
problem | pointer where problem data is stored |
Definition at line 224 of file nlpi.c.
References NULL.
Referenced by computeInteriorPoint(), propdataClear(), SCIP_DECL_RELAXEXEC(), SCIPnlpFree(), and sepadataClear().
void* SCIPnlpiGetProblemPointer | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem | ||
) |
SCIP_RETCODE SCIPnlpiAddVars | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | nvars, | ||
const SCIP_Real * | lbs, | ||
const SCIP_Real * | ubs, | ||
const char ** | varnames | ||
) |
add variables to nlpi
nlpi | pointer to NLPI data structure |
problem | pointer to problem data structure |
nvars | number of variables |
lbs | lower bounds of variables, can be NULL if -infinity |
ubs | ubs upper bounds of variables, can be NULL if +infinity |
varnames | varnames names of variables, can be NULL |
Definition at line 250 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpFlushVarAdditions(), and SCIPcreateNlpiProb().
SCIP_RETCODE SCIPnlpiAddConstraints | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | nconss, | ||
const SCIP_Real * | lhss, | ||
const SCIP_Real * | rhss, | ||
const int * | nlininds, | ||
int *const * | lininds, | ||
SCIP_Real *const * | linvals, | ||
const int * | nquadelems, | ||
SCIP_QUADELEM *const * | quadelems, | ||
int *const * | exprvaridxs, | ||
SCIP_EXPRTREE *const * | exprtrees, | ||
const char ** | names | ||
) |
add constraints to nlpi
nlpi | pointer to NLPI data structure |
problem | pointer to problem data structure |
nconss | number of added constraints |
lhss | left hand sides of constraints |
rhss | right hand sides of constraints |
nlininds | number of linear coefficients for each constraint, may be NULL in case of no linear part |
lininds | indices of variables for linear coefficients for each constraint, may be NULL in case of no linear part |
linvals | values of linear coefficient for each constraint, may be NULL in case of no linear part |
nquadelems | number of elements in matrix of quadratic part for each constraint, may be NULL in case of no quadratic part in any constraint |
quadelems | quadratic elements specifying quadratic part for each constraint, entry of array may be NULL in case of no quadratic part, may be NULL in case of no quadratic part in any constraint |
exprvaridxs | indices of variables in expression tree, maps variable indices in expression tree to indices in nlp, entry of array may be NULL in case of no expression tree, may be NULL in case of no expression tree in any constraint |
exprtrees | exprtrees expression tree for nonquadratic part of constraints, entry of array may be NULL in case of no nonquadratic part, may be NULL in case of no nonquadratic part in any constraint |
names | names of constraints, may be NULL or entries may be NULL |
Definition at line 268 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpFlushNlRowAdditions(), SCIPaddNlpiProbRows(), SCIPaddToNlpiProblemQuadratic(), SCIPaddToNlpiProblemSOC(), and SCIPcreateNlpiProb().
SCIP_RETCODE SCIPnlpiSetObjective | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | nlins, | ||
const int * | lininds, | ||
const SCIP_Real * | linvals, | ||
int | nquadelems, | ||
const SCIP_QUADELEM * | quadelems, | ||
const int * | exprvaridxs, | ||
const SCIP_EXPRTREE * | exprtree, | ||
const SCIP_Real | constant | ||
) |
sets or overwrites objective, a minimization problem is expected
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
nlins | number of linear variables |
lininds | variable indices, may be NULL in case of no linear part |
linvals | coefficient values, may be NULL in case of no linear part |
nquadelems | number of entries in matrix of quadratic part |
quadelems | entries in matrix of quadratic part, may be NULL in case of no quadratic part |
exprvaridxs | indices of variables in expression tree, maps variable indices in expression tree to indices in nlp, may be NULL in case of no expression tree |
exprtree | expression tree for nonquadratic part of objective function, may be NULL in case of no nonquadratic part |
constant | objective value offset |
Definition at line 300 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpFlushObjective(), SCIPcreateNlpiProb(), setQuadraticObj(), and solveNlp().
SCIP_RETCODE SCIPnlpiChgVarBounds | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | nvars, | ||
const int * | indices, | ||
const SCIP_Real * | lbs, | ||
const SCIP_Real * | ubs | ||
) |
change variable bounds
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
nvars | number of variables to change bounds |
indices | indices of variables to change bounds |
lbs | new lower bounds |
ubs | new upper bounds |
Definition at line 325 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlpUpdateVarBounds(), SCIPnlpChgVarBoundsDive(), SCIPnlpChgVarsBoundsDive(), SCIPnlpEndDive(), SCIPupdateNlpiProb(), and solveNlp().
SCIP_RETCODE SCIPnlpiChgConsSides | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | nconss, | ||
const int * | indices, | ||
const SCIP_Real * | lhss, | ||
const SCIP_Real * | rhss | ||
) |
change constraint sides
change constraint bounds
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
nconss | number of constraints to change sides |
indices | indices of constraints to change sides |
lhss | new left hand sides |
rhss | new right hand sides |
Definition at line 343 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowConstantChanged(), nlrowSideChanged(), and SCIPupdateNlpiProb().
SCIP_RETCODE SCIPnlpiDelVarSet | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int * | dstats | ||
) |
delete a set of variables
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
dstats | deletion status of vars; 1 if var should be deleted, 0 if not; afterwards -1 if var was deleted |
Definition at line 361 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlpFlushVarDeletions().
SCIP_RETCODE SCIPnlpiDelConsSet | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int * | dstats | ||
) |
delete a set of constraints
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
dstats | deletion status of rows; 1 if row should be deleted, 0 if not; afterwards -1 if row was deleted |
Definition at line 377 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlpFlushNlRowDeletions().
SCIP_RETCODE SCIPnlpiChgLinearCoefs | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
const int | idx, | ||
int | nvals, | ||
const int * | varidxs, | ||
const SCIP_Real * | vals | ||
) |
changes or adds linear coefficients in a constraint or objective
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
idx | index of constraint or -1 for objective |
nvals | number of values in linear constraint |
varidxs | indices of variable |
vals | new values for coefficient |
Definition at line 393 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpUpdateObjCoef(), nlrowLinearCoefChanged(), SCIPnlpChgVarObjDive(), and separateCuts().
SCIP_RETCODE SCIPnlpiChgQuadCoefs | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | idx, | ||
int | nquadelems, | ||
const SCIP_QUADELEM * | quadelems | ||
) |
changes or adds coefficients in the quadratic part of a constraint or objective
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
idx | index of constraint or -1 for objective |
nquadelems | number of entries in quadratic constraint to change |
quadelems | new elements in quadratic matrix (replacing already existing ones or adding new ones) |
Definition at line 411 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowQuadElemChanged().
SCIP_RETCODE SCIPnlpiChgExprtree | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | idxcons, | ||
const int * | exprvaridxs, | ||
SCIP_EXPRTREE * | exprtree | ||
) |
change the expression tree in the nonlinear part
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
idxcons | index of constraint or -1 for objective |
exprvaridxs | indices of variables in expression tree, maps variable indices in expression tree to indices in nlp, or NULL |
exprtree | new expression tree, or NULL for no tree |
Definition at line 428 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowExprtreeChanged().
SCIP_RETCODE SCIPnlpiChgNonlinCoef | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | considx, | ||
int | paramidx, | ||
SCIP_Real | value | ||
) |
change the value of one parameter in the nonlinear part
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
considx | index of constraint or -1 for objective |
paramidx | index of parameter |
value | new value for nonlinear parameter |
Definition at line 445 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowExprtreeParamChanged().
SCIP_RETCODE SCIPnlpiChgObjConstant | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_Real | objconstant | ||
) |
SCIP_RETCODE SCIPnlpiSetInitialGuess | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_Real * | primalvalues, | ||
SCIP_Real * | consdualvalues, | ||
SCIP_Real * | varlbdualvalues, | ||
SCIP_Real * | varubdualvalues | ||
) |
sets initial guess for primal variables
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
primalvalues | initial primal values for variables, or NULL to clear previous values |
consdualvalues | initial dual values for constraints, or NULL to clear previous values |
varlbdualvalues | initial dual values for variable lower bounds, or NULL to clear previous values |
varubdualvalues | initial dual values for variable upper bounds, or NULL to clear previous values |
Definition at line 477 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by nlpSolve(), and SCIPnlpSetInitialGuess().
SCIP_RETCODE SCIPnlpiSolve | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem | ||
) |
tries to solve NLP
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
Definition at line 495 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpSolve(), SCIP_DECL_RELAXEXEC(), separateCuts(), and solveNlp().
SCIP_NLPSOLSTAT SCIPnlpiGetSolstat | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem | ||
) |
gives solution status
gives solution status, return: Solution Status
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
Definition at line 509 of file nlpi.c.
References NULL.
Referenced by addGenVBound(), computeInteriorPoint(), filterCands(), nlpSolve(), SCIP_DECL_RELAXEXEC(), separateCuts(), and solveNlp().
SCIP_NLPTERMSTAT SCIPnlpiGetTermstat | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem | ||
) |
gives termination reason
gives termination reason; return: Termination Status
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
Definition at line 521 of file nlpi.c.
References NULL.
Referenced by computeInteriorPoint(), and nlpSolve().
SCIP_RETCODE SCIPnlpiGetSolution | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_Real ** | primalvalues, | ||
SCIP_Real ** | consdualvalues, | ||
SCIP_Real ** | varlbdualvalues, | ||
SCIP_Real ** | varubdualvalues | ||
) |
gives primal and dual solution for a ranged constraint, the dual variable is positive if the right hand side is active and negative if the left hand side is active
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
primalvalues | buffer to store pointer to array to primal values, or NULL if not needed |
consdualvalues | buffer to store pointer to array to dual values of constraints, or NULL if not needed |
varlbdualvalues | buffer to store pointer to array to dual values of variable lower bounds, or NULL if not needed |
varubdualvalues | buffer to store pointer to array to dual values of variable lower bounds, or NULL if not needed |
Definition at line 535 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by addGenVBound(), computeInteriorPoint(), filterCands(), nlpSolve(), SCIP_DECL_RELAXEXEC(), separateCuts(), and solveNlp().
SCIP_RETCODE SCIPnlpiGetStatistics | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPSTATISTICS * | statistics | ||
) |
gives solve statistics
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
statistics | pointer to store statistics |
Definition at line 553 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), SCIPnlpGetStatistics(), and solveNlp().
SCIP_RETCODE SCIPnlpiGetWarmstartSize | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
size_t * | size | ||
) |
SCIP_RETCODE SCIPnlpiGetWarmstartMemo | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
void * | buffer | ||
) |
SCIP_RETCODE SCIPnlpiSetWarmstartMemo | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
void * | buffer | ||
) |
SCIP_RETCODE SCIPnlpiGetIntPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
int * | ival | ||
) |
SCIP_RETCODE SCIPnlpiSetIntPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
int | ival | ||
) |
sets integer parameter of NLP
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
type | parameter number |
ival | parameter value |
Definition at line 633 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by applyNlobbt(), computeInteriorPoint(), SCIP_DECL_RELAXEXEC(), SCIPnlpSetIntPar(), separateCuts(), and solveNlp().
SCIP_RETCODE SCIPnlpiGetRealPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
SCIP_Real * | dval | ||
) |
gets floating point parameter of NLP if problem is NULL and type == SCIP_NLPPAR_INFINITY, then gets solver-wide value for infinity
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure, can be NULL only if type == SCIP_NLPPAR_INFINITY |
type | parameter number |
dval | pointer to store the parameter value |
Definition at line 650 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by SCIPnlpGetRealPar().
SCIP_RETCODE SCIPnlpiSetRealPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
SCIP_Real | dval | ||
) |
sets floating point parameter of NLP if problem is NULL and type == SCIP_NLPPAR_INFINITY, then sets solver-wide value for infinity
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure, can be NULL only if type == SCIP_NLPPAR_INFINITY |
type | parameter number |
dval | parameter value |
Definition at line 668 of file nlpi.c.
References NULL, SCIP_CALL, SCIP_NLPPAR_INFINITY, and SCIP_OKAY.
Referenced by applyNlobbt(), computeInteriorPoint(), SCIP_DECL_NLPICOPY(), SCIP_DECL_RELAXEXEC(), SCIPnlpSetRealPar(), separateCuts(), and solveNlp().
SCIP_RETCODE SCIPnlpiGetStringPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
const char ** | sval | ||
) |
gets string parameter of NLP
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
type | parameter number |
sval | pointer to store the parameter value, the user must not modify the string |
Definition at line 684 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by SCIPnlpGetStringPar().
SCIP_RETCODE SCIPnlpiSetStringPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
const char * | sval | ||
) |
SCIP_RETCODE SCIPnlpiSetMessageHdlr | ( | SCIP_NLPI * | nlpi, |
SCIP_MESSAGEHDLR * | messagehdlr | ||
) |
sets message handler for message output
nlpi | pointer to NLPI datastructure |
messagehdlr | pointer to message handler, or NULL to suppress all output |
Definition at line 717 of file nlpi.c.
References NULL, SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPICOPY(), SCIPincludeNlpi(), and SCIPsetMessagehdlr().
SCIP_NLPIDATA* SCIPnlpiGetData | ( | SCIP_NLPI * | nlpi | ) |
gets data of an NLPI
nlpi | NLP interface structure |
Definition at line 730 of file nlpi.c.
References SCIP_Nlpi::nlpidata, and NULL.
Referenced by SCIP_DECL_NLPICOPY(), SCIP_DECL_NLPICREATEPROBLEM(), SCIP_DECL_NLPIFREE(), SCIP_DECL_NLPIGETREALPAR(), SCIP_DECL_NLPISETINTPAR(), SCIP_DECL_NLPISETMESSAGEHDLR(), SCIP_DECL_NLPISETREALPAR(), and SCIPsetModifiedDefaultSettingsIpopt().
const char* SCIPnlpiGetName | ( | SCIP_NLPI * | nlpi | ) |
gets NLP solver name
nlpi | NLP interface structure |
Definition at line 740 of file nlpi.c.
References SCIP_Nlpi::name, and NULL.
Referenced by computeInteriorPoint(), SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), SCIPincludeDialogDefaultSet(), and SCIPincludeNlpi().
const char* SCIPnlpiGetDesc | ( | SCIP_NLPI * | nlpi | ) |
gets NLP solver descriptions
nlpi | NLP interface structure |
Definition at line 750 of file nlpi.c.
References SCIP_Nlpi::description, and NULL.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPnlpiGetPriority | ( | SCIP_NLPI * | nlpi | ) |
gets NLP solver priority
nlpi | NLP interface structure |
Definition at line 760 of file nlpi.c.
References NULL, and SCIP_Nlpi::priority.
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPincludeNlpi().
void SCIPnlpiSetPriority | ( | SCIP_NLPI * | nlpi, |
int | priority | ||
) |
sets NLP solver priority
nlpi | NLP interface structure |
priority | new priority of NLPI |
Definition at line 770 of file nlpi.c.
References NULL, and SCIP_Nlpi::priority.
Referenced by SCIPsetExistsDialog().
SCIP_RETCODE SCIPnlpStatisticsCreate | ( | SCIP_NLPSTATISTICS ** | statistics | ) |
creates an NLP statistics structure
statistics | pointer where to store NLP statistics structure |
Definition at line 781 of file nlpi.c.
References BMSallocMemory, NULL, SCIP_NOMEMORY, and SCIP_OKAY.
Referenced by computeInteriorPoint(), createSubSCIP(), and SCIP_DECL_PROPINITSOL().
void SCIPnlpStatisticsFree | ( | SCIP_NLPSTATISTICS ** | statistics | ) |
frees an NLP statistics structure
statistics | pointer where to store NLP statistics structure |
Definition at line 798 of file nlpi.c.
References BMSfreeMemory, and NULL.
Referenced by computeInteriorPoint(), freeSubSCIP(), and SCIP_DECL_PROPEXITSOL().
int SCIPnlpStatisticsGetNIterations | ( | SCIP_NLPSTATISTICS * | statistics | ) |
gets the number of iterations from an NLP statistics structure
statistics | NLP statistics structure |
Definition at line 810 of file nlpi.c.
References SCIP_NlpStatistics::niterations, and NULL.
Referenced by computeInteriorPoint(), solveNlp(), and solveSubNLP().
SCIP_Real SCIPnlpStatisticsGetTotalTime | ( | SCIP_NLPSTATISTICS * | statistics | ) |
gets the total time from an NLP statistics structure
statistics | NLP statistics structure |
Definition at line 820 of file nlpi.c.
References NULL, and SCIP_NlpStatistics::totaltime.
Referenced by computeInteriorPoint(), solveNlp(), and solveSubNLP().
void SCIPnlpStatisticsSetNIterations | ( | SCIP_NLPSTATISTICS * | statistics, |
int | niterations | ||
) |
sets the number of iterations in an NLP statistics structure
statistics | NLP statistics structure |
niterations | number of iterations to store |
Definition at line 830 of file nlpi.c.
References SCIP_NlpStatistics::niterations, and NULL.
Referenced by SCIP_DECL_NLPIGETSTATISTICS().
void SCIPnlpStatisticsSetTotalTime | ( | SCIP_NLPSTATISTICS * | statistics, |
SCIP_Real | totaltime | ||
) |
sets the total time in an NLP statistics structure
statistics | NLP statistics structure |
totaltime | solution time to store |
Definition at line 840 of file nlpi.c.
References NULL, and SCIP_NlpStatistics::totaltime.
Referenced by SCIP_DECL_NLPIGETSTATISTICS().
SCIP_RETCODE SCIPcreateNlpSolverIpopt | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPI ** | nlpi | ||
) |
create solver interface for Ipopt solver sets *nlpi to NULL if Ipopt is not available
create solver interface for Ipopt solver
blkmem | block memory data structure |
nlpi | pointer to buffer for nlpi address |
Definition at line 1979 of file nlpi_ipopt.cpp.
References NLPI_DESC, NLPI_NAME, NLPI_PRIORITY, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, and SCIPnlpiCreate().
Referenced by SCIP_DECL_NLPICOPY(), and SCIPincludeDefaultPlugins().
const char* SCIPgetSolverNameIpopt | ( | void | ) |
gets string that identifies Ipopt (version number)
Definition at line 2009 of file nlpi_ipopt.cpp.
Referenced by SCIPincludeDefaultPlugins().
const char* SCIPgetSolverDescIpopt | ( | void | ) |
gets string that describes Ipopt (version number)
Definition at line 2015 of file nlpi_ipopt.cpp.
Referenced by SCIPincludeDefaultPlugins().
SCIP_Bool SCIPisIpoptAvailableIpopt | ( | void | ) |
returns whether Ipopt is available, i.e., whether it has been linked in
Definition at line 2021 of file nlpi_ipopt.cpp.
Referenced by checkCurvature(), checkFactorable(), computeED(), SCIP_DECL_CONSINITSOL(), and SCIP_DECL_QUADCONSUPGD().
void* SCIPgetIpoptApplicationPointerIpopt | ( | SCIP_NLPIPROBLEM * | nlpiproblem | ) |
gives a pointer to the IpoptApplication object stored in Ipopt-NLPI's NLPI problem data structure
nlpiproblem | NLP problem of Ipopt-NLPI |
Definition at line 2027 of file nlpi_ipopt.cpp.
References SCIP_NlpiProblem::ipopt, NULL, SCIPABORT, and SCIPerrorMessage.
void* SCIPgetNlpiOracleIpopt | ( | SCIP_NLPIPROBLEM * | nlpiproblem | ) |
gives a pointer to the NLPIORACLE object stored in Ipopt-NLPI's NLPI problem data structure
nlpiproblem | NLP problem of Ipopt-NLPI |
Definition at line 2037 of file nlpi_ipopt.cpp.
References NULL, SCIP_NlpiProblem::oracle, SCIPABORT, and SCIPerrorMessage.
Referenced by computeInteriorPoint().
void SCIPsetModifiedDefaultSettingsIpopt | ( | SCIP_NLPI * | nlpi, |
const char * | optionsstring | ||
) |
sets modified default settings that are used when setting up an Ipopt problem
Do not forget to add a newline after the last option in optionsstring.
nlpi | Ipopt NLP interface |
optionsstring | string with options as in Ipopt options file |
Definition at line 2050 of file nlpi_ipopt.cpp.
References BMSallocMemoryArray, BMSclearMemoryArray, BMScopyMemoryArray, convcheck_maxiter, convcheck_minred, convcheck_nchecks, convcheck_startiter, FALSE, LINEAR, MAX, MAXPERTURB, MIN, NULL, SCIP_INVALID, SCIP_NLPSOLSTAT_FEASIBLE, SCIP_NLPSOLSTAT_LOCINFEASIBLE, SCIP_NLPSOLSTAT_LOCOPT, SCIP_NLPSOLSTAT_UNBOUNDED, SCIP_NLPSOLSTAT_UNKNOWN, SCIP_NLPTERMSTAT_EVALERR, SCIP_NLPTERMSTAT_ITLIM, SCIP_NLPTERMSTAT_MEMERR, SCIP_NLPTERMSTAT_NUMERR, SCIP_NLPTERMSTAT_OKAY, SCIP_NLPTERMSTAT_OTHER, SCIP_NLPTERMSTAT_TILIM, SCIP_NLPTERMSTAT_UOBJLIM, SCIP_OKAY, SCIP_Real, SCIPABORT, SCIPdebugMessage, SCIPdebugPrintf, SCIPerrorMessage, SCIPinterrupted(), SCIPnlpiGetData(), SCIPnlpiOracleEvalConstraintValues(), SCIPnlpiOracleEvalHessianLag(), SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleEvalObjectiveGradient(), SCIPnlpiOracleEvalObjectiveValue(), SCIPnlpiOracleGetConstraintDegree(), SCIPnlpiOracleGetConstraintLhs(), SCIPnlpiOracleGetConstraintName(), SCIPnlpiOracleGetConstraintRhs(), SCIPnlpiOracleGetHessianLagSparsity(), SCIPnlpiOracleGetJacobianSparsity(), SCIPnlpiOracleGetNConstraints(), SCIPnlpiOracleGetNVars(), SCIPnlpiOracleGetVarDegree(), SCIPnlpiOracleGetVarLbs(), SCIPnlpiOracleGetVarNames(), SCIPnlpiOracleGetVarUbs(), SCIPrandomGetReal(), and TRUE.
SCIP_RETCODE LapackDsyev | ( | SCIP_Bool | computeeigenvectors, |
int | N, | ||
SCIP_Real * | a, | ||
SCIP_Real * | w | ||
) |
Calls Lapacks Dsyev routine to compute eigenvalues and eigenvectors of a dense matrix. It's here, because Ipopt is linked against Lapack.
Calls Lapacks Dsyev routine to compute eigenvalues and eigenvectors of a dense matrix.
It's here, because we use Ipopt's interface to Lapack.
computeeigenvectors | should also eigenvectors should be computed ? |
N | dimension |
a | matrix data on input (size N*N); eigenvectors on output if computeeigenvectors == TRUE |
w | buffer to store eigenvalues (size N) |
Definition at line 2805 of file nlpi_ipopt.cpp.
References SCIP_ERROR, SCIP_OKAY, and SCIPerrorMessage.
Referenced by checkCurvature(), checkFactorable(), computeED(), and SCIP_DECL_QUADCONSUPGD().
SCIP_RETCODE SCIPsolveLinearProb | ( | int | N, |
SCIP_Real * | A, | ||
SCIP_Real * | b, | ||
SCIP_Real * | x, | ||
SCIP_Bool * | success | ||
) |
solves a linear problem of the form Ax = b for a regular matrix A
Calls Lapacks IpLapackDgetrf routine to calculate a LU factorization and uses this factorization to solve the linear problem Ax = b. It's here, because Ipopt is linked against Lapack.
N | dimension |
A | matrix data on input (size N*N); filled column-wise |
b | right hand side vector (size N) |
x | buffer to store solution (size N) |
success | pointer to store if the solving routine was successful |
Definition at line 2876 of file nlpi_ipopt.cpp.
References BMSallocMemoryArray, BMScopyMemoryArray, BMSduplicateMemoryArray, BMSfreeMemoryArray, ENTRY, FALSE, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPerrorMessage, SCIPsolveLinearProb3(), and TRUE.
Referenced by SCIPcomputeHyperplaneThreePoints().