59 #ifndef __SCIP_SDPI_H__ 60 #define __SCIP_SDPI_H__ 64 #include "blockmemshell/memory.h" 65 #include "scip/type_retcode.h" 130 SCIP_MESSAGEHDLR* messagehdlr,
180 int* sdpconstnblocknonz,
184 SCIP_Real** sdpconstval,
186 int** sdpnblockvarnonz,
212 const SCIP_Real* lhs,
213 const SCIP_Real* rhs,
268 const SCIP_Real* lhs,
387 int* startZnblocknonz,
393 SCIP_Real** startZval,
395 int* startXnblocknonz,
401 SCIP_Real** startXval,
405 SCIP_Bool enforceslatercheck,
447 SCIP_Bool* primalfeasible,
448 SCIP_Bool* dualfeasible
574 int* startXnblocknonz
593 int* startXnblocknonz,
597 SCIP_Real** startXval
620 int* startXnblocknonz
634 int* startXnblocknonz,
638 SCIP_Real** startXval
774 SCIP_Real* penaltyparam
781 SCIP_Real penaltyparam,
782 SCIP_Real* maxpenaltyparam
SCIP_EXPORT SCIP_RETCODE SCIPsdpiDelLPRowset(SCIP_SDPI *sdpi, int *dstat)
SCIP_EXPORT int SCIPsdpiGetInternalStatus(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPreoptimalSol(SCIP_SDPI *sdpi, SCIP_Bool *success, SCIP_Real *dualsol, int *dualsollength, int nblocks, int *startXnblocknonz, int **startXrow, int **startXcol, SCIP_Real **startXval)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSolve(SCIP_SDPI *sdpi, SCIP_Real *starty, int *startZnblocknonz, int **startZrow, int **startZcol, SCIP_Real **startZval, int *startXnblocknonz, int **startXrow, int **startXcol, SCIP_Real **startXval, SCIP_SDPSOLVERSETTING startsettings, SCIP_Bool enforceslatercheck, SCIP_Real timelimit)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiWriteSDP(SCIP_SDPI *sdpi, const char *fname)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiClear(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetRealpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, SCIP_Real *dval)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetLowerObjbound(SCIP_SDPI *sdpi, SCIP_Real *objlb)
SCIP_EXPORT SCIP_Real SCIPsdpiGetMaxPrimalEntry(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetBounds(SCIP_SDPI *sdpi, int firstvar, int lastvar, SCIP_Real *lbs, SCIP_Real *ubs)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetNLPRows(SCIP_SDPI *sdpi, int *nlprows)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsIterlimExc(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSdpCalls(SCIP_SDPI *sdpi, int *calls)
enum SCIP_SDPSolverSetting SCIP_SDPSOLVERSETTING
SCIP_EXPORT const char * SCIPsdpiGetSolverName(void)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiChgObj(SCIP_SDPI *sdpi, int nvars, const int *ind, const SCIP_Real *obj)
SCIP_EXPORT SCIP_Bool SCIPsdpiDoesWarmstartNeedPrimal(void)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsConverged(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPreoptimalPrimalNonzeros(SCIP_SDPI *sdpi, int nblocks, int *startXnblocknonz)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPrimalNonzeros(SCIP_SDPI *sdpi, int nblocks, int *startXnblocknonz)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiAddLPRows(SCIP_SDPI *sdpi, int nrows, const SCIP_Real *lhs, const SCIP_Real *rhs, int nnonz, const int *row, const int *col, const SCIP_Real *val)
SCIP_RETCODE SCIPsdpiChgLPLhRhSides(SCIP_SDPI *sdpi, int nrows, const int *ind, const SCIP_Real *lhs, const SCIP_Real *rhs)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsPrimalUnbounded(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetStatistics(SCIP_SDPI *sdpi, int *ninfeasible, int *nallfixed, int *nonevarsdp)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSetRealpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, SCIP_Real dval)
SCIP_EXPORT SCIP_Real SCIPsdpiInfinity(SCIP_SDPI *sdpi)
SCIP_EXPORT void * SCIPsdpiGetSolverPointer(SCIP_SDPI *sdpi)
SCIP_EXPORT const char * SCIPsdpiGetSolverDesc(void)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiDelLPRows(SCIP_SDPI *sdpi, int firstrow, int lastrow)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsAcceptable(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetIterations(SCIP_SDPI *sdpi, int *iterations)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiLoadSDP(SCIP_SDPI *sdpi, int nvars, SCIP_Real *obj, SCIP_Real *lb, SCIP_Real *ub, int nsdpblocks, int *sdpblocksizes, int *sdpnblockvars, int sdpconstnnonz, int *sdpconstnblocknonz, int **sdpconstrow, int **sdpconstcol, SCIP_Real **sdpconstval, int sdpnnonz, int **sdpnblockvarnonz, int **sdpvar, int ***sdprow, int ***sdpcol, SCIP_Real ***sdpval, int nlpcons, SCIP_Real *lplhs, SCIP_Real *lprhs, int lpnnonz, int *lprow, int *lpcol, SCIP_Real *lpval)
enum SCIP_SDPSlaterSetting SCIP_SDPSLATERSETTING
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSDPNNonz(SCIP_SDPI *sdpi, int *nnonz)
type definitions for specific SDP-solver interfaces
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetRhSides(SCIP_SDPI *sdpi, int firstrow, int lastrow, SCIP_Real *rhss)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetConstNNonz(SCIP_SDPI *sdpi, int *nnonz)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsTimelimExc(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiClone(SCIP_SDPI *oldsdpi, SCIP_SDPI *newsdpi)
SCIP_EXPORT SCIP_Bool SCIPsdpiFeasibilityKnown(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetTime(SCIP_SDPI *sdpi, SCIP_Real *opttime)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetLhSides(SCIP_SDPI *sdpi, int firstrow, int lastrow, SCIP_Real *lhss)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsDualInfeasible(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_Bool SCIPsdpiWasSolved(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsInfinity(SCIP_SDPI *sdpi, SCIP_Real val)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSol(SCIP_SDPI *sdpi, SCIP_Real *objval, SCIP_Real *dualsol, int *dualsollength)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsOptimal(SCIP_SDPI *sdpi)
SCIP_MESSAGEHDLR * SCIPsdpiGetMessagehdlr(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetNSDPBlocks(SCIP_SDPI *sdpi, int *nsdpblocks)
SCIP_EXPORT void SCIPsdpiClockSetType(SCIP_SDPI *sdpi, int clocktype)
struct SCIP_SDPi SCIP_SDPI
SCIP_EXPORT SCIP_Bool SCIPsdpiIsDualUnbounded(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSetIntpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, int ival)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiFree(SCIP_SDPI **sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiComputeMaxPenaltyparam(SCIP_SDPI *sdpi, SCIP_Real penaltyparam, SCIP_Real *maxpenaltyparam)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetIntpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, int *ival)
SCIP_EXPORT SCIP_Bool SCIPsdpiSolvedOrig(SCIP_SDPI *sdpi)
enum SCIP_SDPSlater SCIP_SDPSLATER
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetObjval(SCIP_SDPI *sdpi, SCIP_Real *objval)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiReadSDP(SCIP_SDPI *sdpi, const char *fname)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPrimalBoundVars(SCIP_SDPI *sdpi, SCIP_Real *lbvars, SCIP_Real *ubvars, int *arraylength)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSolFeasibility(SCIP_SDPI *sdpi, SCIP_Bool *primalfeasible, SCIP_Bool *dualfeasible)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiComputePenaltyparam(SCIP_SDPI *sdpi, SCIP_Real maxcoeff, SCIP_Real *penaltyparam)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiComputeLambdastar(SCIP_SDPI *sdpi, SCIP_Real maxguess)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSettingsUsed(SCIP_SDPI *sdpi, SCIP_SDPSOLVERSETTING *usedsetting)
enum SCIP_SDPParam SCIP_SDPPARAM
SCIP_EXPORT int SCIPsdpiGetDefaultSdpiSolverNpenaltyIncreases(void)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiCreate(SCIP_SDPI **sdpi, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, BMS_BUFMEM *bufmem)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsPrimalInfeasible(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetObj(SCIP_SDPI *sdpi, int firstvar, int lastvar, SCIP_Real *vals)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiChgBounds(SCIP_SDPI *sdpi, int nvars, const int *ind, const SCIP_Real *lb, const SCIP_Real *ub)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSlaterSettings(SCIP_SDPI *sdpi, SCIP_SDPSLATERSETTING *slatersetting)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetLPNNonz(SCIP_SDPI *sdpi, int *nnonz)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPrimalMatrix(SCIP_SDPI *sdpi, int nblocks, int *startXnblocknonz, int **startXrow, int **startXcol, SCIP_Real **startXval)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsPrimalFeasible(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetNVars(SCIP_SDPI *sdpi, int *nvars)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsDualFeasible(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_Bool SCIPsdpiIsObjlimExc(SCIP_SDPI *sdpi)
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSlater(SCIP_SDPI *sdpi, SCIP_SDPSLATER *primalslater, SCIP_SDPSLATER *dualslater)