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_all.c |
NLP interface that uses all available NLP interfaces. | |
file | nlpi_filtersqp.c |
filterSQP NLP interface | |
file | nlpi_filtersqp.h |
filterSQP NLP interface | |
file | nlpi_filtersqp_dummy.c |
dummy filterSQP NLP interface for the case that FilterSQP is not available | |
file | nlpi_ipopt.cpp |
Ipopt NLP interface. | |
file | nlpi_ipopt.h |
Ipopt NLP interface. | |
file | nlpi_worhp.c |
Worhp NLP interface. | |
file | nlpi_worhp.h |
Worhp NLP interface. | |
file | nlpi_worhp_dummy.c |
dummy WORHP 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, SCIP_ALLOC, and SCIP_OKAY.
Referenced by SCIPcreateNlpSolverAll(), SCIPcreateNlpSolverFilterSQP(), SCIPcreateNlpSolverIpopt(), and SCIPcreateNlpSolverWorhp().
SCIP_RETCODE SCIPnlpiCopy | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPI * | sourcenlpi, | ||
SCIP_NLPI ** | targetnlpi | ||
) |
copies an NLPI
blkmem | block memory in target SCIP |
sourcenlpi | pointer to NLPI data structure to copy |
targetnlpi | buffer to store pointer to copied NLPI data structure |
Definition at line 165 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by SCIPcreateNlpSolverAll().
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, SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPIFREE(), and 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.
Referenced by applyNlobbt(), computeInteriorPoint(), createNLP(), SCIP_DECL_NLPICREATEPROBLEM(), 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.
Referenced by computeInteriorPoint(), freeNLP(), propdataClear(), SCIP_DECL_NLPIFREEPROBLEM(), 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 SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpFlushVarAdditions(), SCIP_DECL_NLPIADDVARS(), 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 SCIP_CALL, and SCIP_OKAY.
Referenced by addRegularScholtes(), computeInteriorPoint(), nlpFlushNlRowAdditions(), SCIP_DECL_NLPIADDCONSTRAINTS(), 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 SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpFlushObjective(), SCIP_DECL_NLPISETOBJECTIVE(), 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 SCIP_CALL, and SCIP_OKAY.
Referenced by heurExec(), nlpUpdateVarBounds(), SCIP_DECL_NLPICHGVARBOUNDS(), 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 SCIP_CALL, and SCIP_OKAY.
Referenced by addRegularScholtes(), nlrowConstantChanged(), nlrowSideChanged(), SCIP_DECL_NLPICHGCONSSIDES(), and SCIPupdateNlpiProb().
SCIP_RETCODE SCIPnlpiDelVarSet | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int * | dstats, | ||
int | dstatssize | ||
) |
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 |
dstatssize | size of the dstats array |
Definition at line 361 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by nlpFlushVarDeletions(), and SCIP_DECL_NLPIDELVARSET().
SCIP_RETCODE SCIPnlpiDelConsSet | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int * | dstats, | ||
int | dstatssize | ||
) |
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 |
dstatssize | size of the dstats array |
Definition at line 378 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by nlpFlushNlRowDeletions(), and SCIP_DECL_NLPIDELCONSSET().
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 395 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), nlpUpdateObjCoef(), nlrowLinearCoefChanged(), SCIP_DECL_NLPICHGLINEARCOEFS(), 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 413 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowQuadElemChanged(), and SCIP_DECL_NLPICHGQUADCOEFS().
SCIP_RETCODE SCIPnlpiChgExprtree | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
int | idxcons, | ||
const int * | exprvaridxs, | ||
const 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 430 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowExprtreeChanged(), and SCIP_DECL_NLPICHGEXPRTREE().
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 447 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by nlrowExprtreeParamChanged(), and SCIP_DECL_NLPICHGNONLINCOEF().
SCIP_RETCODE SCIPnlpiChgObjConstant | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_Real | objconstant | ||
) |
change the constant offset in the objective
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
objconstant | new value for objective constant |
Definition at line 464 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPICHGOBJCONSTANT().
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 479 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by heurExec(), nlpSolve(), SCIP_DECL_NLPISETINITIALGUESS(), 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 497 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), heurExec(), nlpSolve(), SCIP_DECL_NLPISOLVE(), 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 511 of file nlpi.c.
Referenced by addGenVBound(), computeInteriorPoint(), filterCands(), heurExec(), nlpSolve(), SCIP_DECL_NLPIGETSOLSTAT(), SCIP_DECL_NLPISOLVE(), 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 523 of file nlpi.c.
Referenced by computeInteriorPoint(), nlpSolve(), SCIP_DECL_NLPIGETTERMSTAT(), and SCIP_DECL_NLPISOLVE().
SCIP_RETCODE SCIPnlpiGetSolution | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_Real ** | primalvalues, | ||
SCIP_Real ** | consdualvalues, | ||
SCIP_Real ** | varlbdualvalues, | ||
SCIP_Real ** | varubdualvalues, | ||
SCIP_Real * | objval | ||
) |
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 |
objval | buffer to store the objective value, or NULL if not needed |
Definition at line 537 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by addGenVBound(), computeInteriorPoint(), filterCands(), heurExec(), nlpSolve(), SCIP_DECL_NLPIGETSOLUTION(), SCIP_DECL_NLPISOLVE(), 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 556 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by computeInteriorPoint(), heurExec(), SCIP_DECL_NLPIGETSTATISTICS(), SCIP_DECL_NLPISOLVE(), 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 | ||
) |
gets integer parameter of NLP
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
type | parameter number |
ival | pointer to store the parameter value |
Definition at line 619 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPIGETINTPAR(), and SCIPnlpGetIntPar().
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 636 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by applyNlobbt(), computeInteriorPoint(), heurExec(), SCIP_DECL_NLPISETINTPAR(), 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 653 of file nlpi.c.
References SCIP_CALL, SCIP_NLPPAR_INFINITY, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPICOPY(), SCIP_DECL_NLPIGETREALPAR(), SCIP_DECL_NLPISOLVE(), and 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 671 of file nlpi.c.
References SCIP_CALL, SCIP_NLPPAR_INFINITY, and SCIP_OKAY.
Referenced by applyNlobbt(), computeInteriorPoint(), heurExec(), nlpSolve(), SCIP_DECL_NLPICOPY(), SCIP_DECL_NLPISETREALPAR(), 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 687 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPIGETSTRINGPAR(), and SCIPnlpGetStringPar().
SCIP_RETCODE SCIPnlpiSetStringPar | ( | SCIP_NLPI * | nlpi, |
SCIP_NLPIPROBLEM * | problem, | ||
SCIP_NLPPARAM | type, | ||
const char * | sval | ||
) |
sets string parameter of NLP
nlpi | pointer to NLPI datastructure |
problem | pointer to problem data structure |
type | parameter number |
sval | parameter value |
Definition at line 704 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPISETSTRINGPAR(), and SCIPnlpSetStringPar().
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 720 of file nlpi.c.
References SCIP_CALL, and SCIP_OKAY.
Referenced by SCIP_DECL_NLPICOPY(), SCIP_DECL_NLPISETMESSAGEHDLR(), SCIPincludeNlpi(), and SCIPsetMessagehdlr().
SCIP_NLPIDATA* SCIPnlpiGetData | ( | SCIP_NLPI * | nlpi | ) |
gets data of an NLPI
nlpi | NLP interface structure |
Definition at line 733 of file nlpi.c.
References SCIP_Nlpi::nlpidata.
Referenced by initWorhp(), SCIP_DECL_NLPIADDCONSTRAINTS(), SCIP_DECL_NLPIADDVARS(), SCIP_DECL_NLPICHGCONSSIDES(), SCIP_DECL_NLPICHGEXPRTREE(), SCIP_DECL_NLPICHGLINEARCOEFS(), SCIP_DECL_NLPICHGNONLINCOEF(), SCIP_DECL_NLPICHGOBJCONSTANT(), SCIP_DECL_NLPICHGQUADCOEFS(), SCIP_DECL_NLPICHGVARBOUNDS(), SCIP_DECL_NLPICOPY(), SCIP_DECL_NLPICREATEPROBLEM(), SCIP_DECL_NLPIDELCONSSET(), SCIP_DECL_NLPIDELVARSET(), SCIP_DECL_NLPIFREE(), SCIP_DECL_NLPIFREEPROBLEM(), SCIP_DECL_NLPIGETINTPAR(), SCIP_DECL_NLPIGETREALPAR(), SCIP_DECL_NLPIGETSOLSTAT(), SCIP_DECL_NLPIGETSOLUTION(), SCIP_DECL_NLPIGETSTATISTICS(), SCIP_DECL_NLPIGETSTRINGPAR(), SCIP_DECL_NLPIGETTERMSTAT(), SCIP_DECL_NLPISETINITIALGUESS(), SCIP_DECL_NLPISETINTPAR(), SCIP_DECL_NLPISETMESSAGEHDLR(), SCIP_DECL_NLPISETOBJECTIVE(), SCIP_DECL_NLPISETREALPAR(), SCIP_DECL_NLPISETSTRINGPAR(), SCIP_DECL_NLPISOLVE(), and SCIPsetModifiedDefaultSettingsIpopt().
const char* SCIPnlpiGetName | ( | SCIP_NLPI * | nlpi | ) |
gets NLP solver name
nlpi | NLP interface structure |
Definition at line 743 of file nlpi.c.
References SCIP_Nlpi::name.
Referenced by computeInteriorPoint(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_NLPISOLVE(), SCIPincludeDialogDefaultFix(), SCIPincludeDialogDefaultSet(), SCIPincludeNlpi(), and SCIPsetIncludeDialog().
const char* SCIPnlpiGetDesc | ( | SCIP_NLPI * | nlpi | ) |
gets NLP solver descriptions
nlpi | NLP interface structure |
Definition at line 753 of file nlpi.c.
References SCIP_Nlpi::description.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPnlpiGetPriority | ( | SCIP_NLPI * | nlpi | ) |
gets NLP solver priority
nlpi | NLP interface structure |
Definition at line 763 of file nlpi.c.
References 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 773 of file nlpi.c.
References SCIP_Nlpi::priority.
Referenced by SCIPsetExistsDialog().
SCIP_RETCODE SCIPnlpStatisticsCreate | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPSTATISTICS ** | statistics | ||
) |
creates an NLP statistics structure
blkmem | block memory |
statistics | pointer where to store NLP statistics structure |
Definition at line 784 of file nlpi.c.
References BMSallocBlockMemory, SCIP_ALLOC, and SCIP_OKAY.
Referenced by computeInteriorPoint(), createSubSCIP(), heurExec(), and SCIP_DECL_PROPINITSOL().
void SCIPnlpStatisticsFree | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPSTATISTICS ** | statistics | ||
) |
frees an NLP statistics structure
blkmem | block memory |
statistics | pointer where to store NLP statistics structure |
Definition at line 801 of file nlpi.c.
References BMSfreeBlockMemory.
Referenced by computeInteriorPoint(), freeSubSCIP(), heurExec(), 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 816 of file nlpi.c.
References SCIP_NlpStatistics::niterations.
Referenced by computeInteriorPoint(), heurExec(), SCIP_DECL_NLPISOLVE(), 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 826 of file nlpi.c.
References SCIP_NlpStatistics::totaltime.
Referenced by computeInteriorPoint(), SCIP_DECL_NLPISOLVE(), 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 836 of file nlpi.c.
References SCIP_NlpStatistics::niterations.
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 846 of file nlpi.c.
References SCIP_NlpStatistics::totaltime.
Referenced by SCIP_DECL_NLPIGETSTATISTICS().
SCIP_RETCODE SCIPcreateNlpSolverAll | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPI ** | nlpi, | ||
SCIP_NLPI ** | nlpis, | ||
int | nnlpis | ||
) |
create solver interface for All solver
blkmem | block memory data structure |
nlpi | pointer to buffer for nlpi address |
nlpis | array containing existing nlpis |
nnlpis | total number of nlpis |
Definition at line 1173 of file nlpi_all.c.
References BMSallocBlockMemory, BMSallocBlockMemoryArray, BMSclearMemory, NLPI_DESC, NLPI_NAME, NLPI_PRIORITY, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIPnlpiCopy(), and SCIPnlpiCreate().
Referenced by SCIP_DECL_NLPICOPY(), and SCIPincludeDefaultPlugins().
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 2034 of file nlpi_ipopt.cpp.
References NLPI_DESC, NLPI_NAME, NLPI_PRIORITY, 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 2064 of file nlpi_ipopt.cpp.
Referenced by SCIPincludeDefaultPlugins().
const char* SCIPgetSolverDescIpopt | ( | void | ) |
gets string that describes Ipopt
Definition at line 2070 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 2076 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 2082 of file nlpi_ipopt.cpp.
References SCIP_NlpiProblem::ipopt, 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 2092 of file nlpi_ipopt.cpp.
References 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 2105 of file nlpi_ipopt.cpp.
References BMSallocMemoryArray, BMSclearMemoryArray, BMScopyMemoryArray, convcheck_maxiter, convcheck_minred, convcheck_nchecks, convcheck_startiter, FALSE, LINEAR, MAX, MAXPERTURB, 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_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 2860 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 2931 of file nlpi_ipopt.cpp.
References BMSallocMemoryArray, BMScopyMemoryArray, BMSduplicateMemoryArray, BMSfreeMemoryArray, BMSfreeMemoryArrayNull, ENTRY, FALSE, SCIP_ALLOC, SCIP_ALLOC_TERMINATE, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPerrorMessage, SCIPsolveLinearProb3(), and TRUE.
Referenced by SCIPcomputeHyperplaneThreePoints().
SCIP_RETCODE SCIPcreateNlpSolverWorhp | ( | BMS_BLKMEM * | blkmem, |
SCIP_NLPI ** | nlpi, | ||
SCIP_Bool | useip | ||
) |
create solver interface for Worhp solver
blkmem | block memory data structure |
nlpi | pointer to buffer for nlpi address |
useip | TRUE for using Interior Point, FALSE for SQP |
Definition at line 2368 of file nlpi_worhp.c.
References BMSallocBlockMemory, BMSclearMemory, NLPI_DESC, NLPI_PRIORITY_IP, NLPI_PRIORITY_SQP, noprint(), SCIP_ALLOC, SCIP_CALL, SCIP_DEFAULT_INFINITY, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPnlpiCreate(), and SCIPsnprintf().
Referenced by SCIP_DECL_NLPICOPY(), and SCIPincludeDefaultPlugins().
const char* SCIPgetSolverNameWorhp | ( | void | ) |
gets string that identifies Worhp (version number)
Definition at line 2432 of file nlpi_worhp.c.
Referenced by SCIPincludeDefaultPlugins().
const char* SCIPgetSolverDescWorhp | ( | void | ) |
gets string that describes Worhp (version number)
Definition at line 2446 of file nlpi_worhp.c.
Referenced by SCIPincludeDefaultPlugins().
SCIP_Bool SCIPisWorhpAvailableWorhp | ( | void | ) |
returns whether Worhp is available, i.e., whether it has been linked in
Definition at line 2454 of file nlpi_worhp.c.