Detailed Description
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 | |
Functions | |
const char * | SCIPgetSolverNameFilterSQP (void) |
const char * | SCIPgetSolverDescFilterSQP (void) |
SCIP_Bool | SCIPisFilterSQPAvailableFilterSQP (void) |
const char * | SCIPgetSolverNameIpopt (void) |
const char * | SCIPgetSolverDescIpopt (void) |
SCIP_Bool | SCIPisIpoptAvailableIpopt (void) |
void * | SCIPgetNlpiOracleIpopt (SCIP_NLPIPROBLEM *nlpiproblem) |
SCIP_RETCODE | SCIPcallLapackDsyevIpopt (SCIP_Bool computeeigenvectors, int N, SCIP_Real *a, SCIP_Real *w) |
SCIP_RETCODE | SCIPsolveLinearEquationsIpopt (int N, SCIP_Real *A, SCIP_Real *b, SCIP_Real *x, SCIP_Bool *success) |
const char * | SCIPgetSolverNameWorhp (void) |
const char * | SCIPgetSolverDescWorhp (void) |
SCIP_Bool | SCIPisWorhpAvailableWorhp (void) |
Files | |
file | nlpi_all.h |
NLP interface that uses all available NLP interfaces. | |
file | nlpi_filtersqp.h |
filterSQP NLP interface | |
file | nlpi_ipopt.h |
Ipopt NLP interface. | |
file | nlpi_worhp.h |
Worhp NLP interface. | |
Function Documentation
◆ SCIPgetSolverNameFilterSQP()
const char * SCIPgetSolverNameFilterSQP | ( | void | ) |
gets string that identifies filterSQP
Definition at line 1830 of file nlpi_filtersqp.c.
Referenced by SCIPincludeNlpSolverFilterSQP().
◆ SCIPgetSolverDescFilterSQP()
const char * SCIPgetSolverDescFilterSQP | ( | void | ) |
gets string that describes filterSQP
Definition at line 1838 of file nlpi_filtersqp.c.
References NLPI_DESC.
Referenced by SCIPincludeNlpSolverFilterSQP().
◆ SCIPisFilterSQPAvailableFilterSQP()
SCIP_Bool SCIPisFilterSQPAvailableFilterSQP | ( | void | ) |
returns whether filterSQP is available, i.e., whether it has been linked in
Definition at line 1846 of file nlpi_filtersqp.c.
◆ SCIPgetSolverNameIpopt()
const char * SCIPgetSolverNameIpopt | ( | void | ) |
gets string that identifies Ipopt (version number)
Definition at line 1843 of file nlpi_ipopt.cpp.
Referenced by SCIPincludeNlpSolverIpopt().
◆ SCIPgetSolverDescIpopt()
const char * SCIPgetSolverDescIpopt | ( | void | ) |
gets string that describes Ipopt
Definition at line 1849 of file nlpi_ipopt.cpp.
Referenced by SCIPincludeNlpSolverIpopt().
◆ SCIPisIpoptAvailableIpopt()
SCIP_Bool SCIPisIpoptAvailableIpopt | ( | void | ) |
returns whether Ipopt is available, i.e., whether it has been linked in
Definition at line 1855 of file nlpi_ipopt.cpp.
Referenced by SCIP_DECL_SEPAEXECLP(), SCIPlapackComputeEigenvalues(), SCIPlapackIsAvailable(), and SCIPlapackSolveLinearEquations().
◆ SCIPgetNlpiOracleIpopt()
void * SCIPgetNlpiOracleIpopt | ( | SCIP_NLPIPROBLEM * | nlpiproblem | ) |
gives a pointer to the NLPIORACLE object stored in Ipopt-NLPI's NLPI problem data structure
- Parameters
-
nlpiproblem NLP problem of Ipopt-NLPI
Definition at line 1861 of file nlpi_ipopt.cpp.
References NULL, SCIP_NlpiProblem::oracle, SCIPABORT, and SCIPerrorMessage.
Referenced by computeInteriorPoint().
◆ SCIPcallLapackDsyevIpopt()
SCIP_RETCODE SCIPcallLapackDsyevIpopt | ( | SCIP_Bool | computeeigenvectors, |
int | N, | ||
SCIP_Real * | a, | ||
SCIP_Real * | w | ||
) |
Calls Lapacks Dsyev routine to compute eigenvalues and eigenvectors of a dense matrix.
This uses Ipopt's interface to Lapack.
- Parameters
-
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 2686 of file nlpi_ipopt.cpp.
References a, SCIP_ERROR, SCIP_OKAY, SCIPerrorMessage, and w.
Referenced by SCIPlapackComputeEigenvalues().
◆ SCIPsolveLinearEquationsIpopt()
SCIP_RETCODE SCIPsolveLinearEquationsIpopt | ( | 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 DGETRF routine to calculate a LU factorization and uses this factorization to solve the linear problem Ax = b.
This uses Ipopt's interface to Lapack.
- Parameters
-
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 2770 of file nlpi_ipopt.cpp.
References b, BMSallocMemoryArray, BMScopyMemoryArray, BMSduplicateMemoryArray, BMSfreeMemoryArray, FALSE, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_ERROR, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPerrorMessage, solveLinearProb3(), TRUE, and x.
Referenced by SCIPlapackSolveLinearEquations().
◆ SCIPgetSolverNameWorhp()
const char * SCIPgetSolverNameWorhp | ( | void | ) |
gets string that identifies Worhp (version number)
Definition at line 1647 of file nlpi_worhp.c.
Referenced by SCIPincludeNlpSolverWorhp().
◆ SCIPgetSolverDescWorhp()
const char * SCIPgetSolverDescWorhp | ( | void | ) |
gets string that describes Worhp (version number)
Definition at line 1661 of file nlpi_worhp.c.
Referenced by SCIPincludeNlpSolverWorhp().
◆ SCIPisWorhpAvailableWorhp()
SCIP_Bool SCIPisWorhpAvailableWorhp | ( | void | ) |
returns whether Worhp is available, i.e., whether it has been linked in
Definition at line 1669 of file nlpi_worhp.c.