SCIP-SDP  3.2.0
sdpi.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of SCIPSDP - a solving framework for mixed-integer */
4 /* semidefinite programs based on SCIP. */
5 /* */
6 /* Copyright (C) 2011-2013 Discrete Optimization, TU Darmstadt */
7 /* EDOM, FAU Erlangen-Nürnberg */
8 /* 2014-2020 Discrete Optimization, TU Darmstadt */
9 /* */
10 /* */
11 /* This program is free software; you can redistribute it and/or */
12 /* modify it under the terms of the GNU Lesser General Public License */
13 /* as published by the Free Software Foundation; either version 3 */
14 /* of the License, or (at your option) any later version. */
15 /* */
16 /* This program is distributed in the hope that it will be useful, */
17 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
18 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
19 /* GNU Lesser General Public License for more details. */
20 /* */
21 /* You should have received a copy of the GNU Lesser General Public License */
22 /* along with this program; if not, write to the Free Software */
23 /* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.*/
24 /* */
25 /* */
26 /* Based on SCIP - Solving Constraint Integer Programs */
27 /* Copyright (C) 2002-2020 Zuse Institute Berlin */
28 /* SCIP is distributed under the terms of the SCIP Academic Licence, */
29 /* see file COPYING in the SCIP distribution. */
30 /* */
31 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
32 
54 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
55 
56 #ifndef __SCIP_SDPI_H__
57 #define __SCIP_SDPI_H__
58 
59 
60 #include "scip/def.h"
61 #include "blockmemshell/memory.h"
62 #include "scip/type_retcode.h"
63 #include "sdpi/type_sdpi.h"
64 
65 #ifdef __cplusplus
66 extern "C" {
67 #endif
68 
69 /*
70  * Miscellaneous Methods
71  */
72 
77 SCIP_EXPORT
78 const char* SCIPsdpiGetSolverName(
79  void
80  );
81 
83 SCIP_EXPORT
84 const char* SCIPsdpiGetSolverDesc(
85  void
86  );
87 
94 SCIP_EXPORT
96  SCIP_SDPI* sdpi
97  );
98 
100 SCIP_EXPORT
102  void
103  );
104 
106 SCIP_EXPORT
108  void
109  );
110 
112 SCIP_EXPORT
114  void
115  );
116 
118 SCIP_EXPORT
120  void
121  );
122 
128 /*
129  * SDPI Creation and Destruction Methods
130  */
131 
136 SCIP_EXPORT
137 SCIP_RETCODE SCIPsdpiCreate(
138  SCIP_SDPI** sdpi,
139  SCIP_MESSAGEHDLR* messagehdlr,
140  BMS_BLKMEM* blkmem,
141  BMS_BUFMEM* bufmem
142  );
143 
145 SCIP_EXPORT
146 SCIP_RETCODE SCIPsdpiFree(
147  SCIP_SDPI** sdpi
148  );
149 
154 SCIP_EXPORT
155 SCIP_RETCODE SCIPsdpiClone(
156  SCIP_SDPI* oldsdpi,
157  SCIP_SDPI* newsdpi
158  );
159 
165 /*
166  * Modification Methods
167  */
168 
177 SCIP_EXPORT
178 SCIP_RETCODE SCIPsdpiLoadSDP(
179  SCIP_SDPI* sdpi,
180  int nvars,
181  SCIP_Real* obj,
182  SCIP_Real* lb,
183  SCIP_Real* ub,
184  int nsdpblocks,
185  int* sdpblocksizes,
186  int* sdpnblockvars,
187  int sdpconstnnonz,
188  int* sdpconstnblocknonz,
190  int** sdpconstrow,
191  int** sdpconstcol,
192  SCIP_Real** sdpconstval,
193  int sdpnnonz,
194  int** sdpnblockvarnonz,
196  int** sdpvar,
198  int*** sdprow,
201  int*** sdpcol,
202  SCIP_Real*** sdpval,
203  int nlpcons,
204  SCIP_Real* lplhs,
205  SCIP_Real* lprhs,
206  int lpnnonz,
207  int* lprow,
208  int* lpcol,
209  SCIP_Real* lpval
210  );
211 
216 SCIP_EXPORT
217 SCIP_RETCODE SCIPsdpiAddLPRows(
218  SCIP_SDPI* sdpi,
219  int nrows,
220  const SCIP_Real* lhs,
221  const SCIP_Real* rhs,
222  int nnonz,
223  const int* row,
225  const int* col,
226  const SCIP_Real* val
227  );
228 
230 SCIP_EXPORT
231 SCIP_RETCODE SCIPsdpiDelLPRows(
232  SCIP_SDPI* sdpi,
233  int firstrow,
234  int lastrow
235  );
236 
238 SCIP_EXPORT
239 SCIP_RETCODE SCIPsdpiDelLPRowset(
240  SCIP_SDPI* sdpi,
241  int* dstat
244  );
245 
247 SCIP_EXPORT
248 SCIP_RETCODE SCIPsdpiClear(
249  SCIP_SDPI* sdpi
250  );
251 
253 SCIP_EXPORT
254 SCIP_RETCODE SCIPsdpiChgObj(
255  SCIP_SDPI* sdpi,
256  int nvars,
257  const int* ind,
258  const SCIP_Real* obj
259  );
260 
262 SCIP_EXPORT
263 SCIP_RETCODE SCIPsdpiChgBounds(
264  SCIP_SDPI* sdpi,
265  int nvars,
266  const int* ind,
267  const SCIP_Real* lb,
268  const SCIP_Real* ub
269  );
270 
272 SCIP_RETCODE SCIPsdpiChgLPLhRhSides(
273  SCIP_SDPI* sdpi,
274  int nrows,
275  const int* ind,
276  const SCIP_Real* lhs,
277  const SCIP_Real* rhs
278  );
279 
280 
281 /*
282  * Data Accessing Methods
283  */
284 
289 SCIP_EXPORT
290 SCIP_RETCODE SCIPsdpiGetNLPRows(
291  SCIP_SDPI* sdpi,
292  int* nlprows
293  );
294 
296 SCIP_EXPORT
297 SCIP_RETCODE SCIPsdpiGetNSDPBlocks(
298  SCIP_SDPI* sdpi,
299  int* nsdpblocks
300  );
301 
303 SCIP_EXPORT
304 SCIP_RETCODE SCIPsdpiGetNVars(
305  SCIP_SDPI* sdpi,
306  int* nvars
307  );
308 
310 SCIP_EXPORT
311 SCIP_RETCODE SCIPsdpiGetSDPNNonz(
312  SCIP_SDPI* sdpi,
313  int* nnonz
314  );
315 
317 SCIP_EXPORT
318 SCIP_RETCODE SCIPsdpiGetConstNNonz(
319  SCIP_SDPI* sdpi,
320  int* nnonz
321  );
322 
324 SCIP_EXPORT
325 SCIP_RETCODE SCIPsdpiGetLPNNonz(
326  SCIP_SDPI* sdpi,
327  int* nnonz
328  );
329 
331 SCIP_EXPORT
332 SCIP_RETCODE SCIPsdpiGetObj(
333  SCIP_SDPI* sdpi,
334  int firstvar,
335  int lastvar,
336  SCIP_Real* vals
337  );
338 
340 SCIP_EXPORT
341 SCIP_RETCODE SCIPsdpiGetBounds(
342  SCIP_SDPI* sdpi,
343  int firstvar,
344  int lastvar,
345  SCIP_Real* lbs,
346  SCIP_Real* ubs
347  );
348 
350 SCIP_EXPORT
351 SCIP_RETCODE SCIPsdpiGetLhSides(
352  SCIP_SDPI* sdpi,
353  int firstrow,
354  int lastrow,
355  SCIP_Real* lhss
356  );
357 
359 SCIP_EXPORT
360 SCIP_RETCODE SCIPsdpiGetRhSides(
361  SCIP_SDPI* sdpi,
362  int firstrow,
363  int lastrow,
364  SCIP_Real* rhss
365  );
366 
367 
373 /*
374  * Solving Methods
375  */
376 
386 SCIP_EXPORT
387 SCIP_RETCODE SCIPsdpiSolve(
388  SCIP_SDPI* sdpi,
389  SCIP_Real* starty,
390  int* startZnblocknonz,
392  int** startZrow,
394  int** startZcol,
396  SCIP_Real** startZval,
398  int* startXnblocknonz,
400  int** startXrow,
402  int** startXcol,
404  SCIP_Real** startXval,
406  SCIP_SDPSOLVERSETTING startsettings,
408  SCIP_Bool enforceslatercheck,
410  SCIP_Real timelimit
411  );
412 
418 /*
419  * Solution Information Methods
420  */
421 
426 SCIP_EXPORT
427 SCIP_Bool SCIPsdpiWasSolved(
428  SCIP_SDPI* sdpi
429  );
430 
432 SCIP_EXPORT
433 SCIP_Bool SCIPsdpiSolvedOrig(
434  SCIP_SDPI* sdpi
435  );
436 
441 SCIP_EXPORT
442 SCIP_Bool SCIPsdpiFeasibilityKnown(
443  SCIP_SDPI* sdpi
444  );
445 
447 SCIP_EXPORT
448 SCIP_RETCODE SCIPsdpiGetSolFeasibility(
449  SCIP_SDPI* sdpi,
450  SCIP_Bool* primalfeasible,
451  SCIP_Bool* dualfeasible
452  );
453 
457 SCIP_EXPORT
458 SCIP_Bool SCIPsdpiIsPrimalUnbounded(
459  SCIP_SDPI* sdpi
460  );
461 
465 SCIP_EXPORT
467  SCIP_SDPI* sdpi
468  );
469 
473 SCIP_EXPORT
474 SCIP_Bool SCIPsdpiIsPrimalFeasible(
475  SCIP_SDPI* sdpi
476  );
477 
481 SCIP_EXPORT
482 SCIP_Bool SCIPsdpiIsDualUnbounded(
483  SCIP_SDPI* sdpi
484  );
485 
489 SCIP_EXPORT
490 SCIP_Bool SCIPsdpiIsDualInfeasible(
491  SCIP_SDPI* sdpi
492  );
493 
497 SCIP_EXPORT
498 SCIP_Bool SCIPsdpiIsDualFeasible(
499  SCIP_SDPI* sdpi
500  );
501 
503 SCIP_EXPORT
504 SCIP_Bool SCIPsdpiIsConverged(
505  SCIP_SDPI* sdpi
506  );
507 
509 SCIP_EXPORT
510 SCIP_Bool SCIPsdpiIsObjlimExc(
511  SCIP_SDPI* sdpi
512  );
513 
515 SCIP_EXPORT
516 SCIP_Bool SCIPsdpiIsIterlimExc(
517  SCIP_SDPI* sdpi
518  );
519 
521 SCIP_EXPORT
522 SCIP_Bool SCIPsdpiIsTimelimExc(
523  SCIP_SDPI* sdpi
524  );
525 
537 SCIP_EXPORT
539  SCIP_SDPI* sdpi
540  );
541 
543 SCIP_EXPORT
544 SCIP_Bool SCIPsdpiIsOptimal(
545  SCIP_SDPI* sdpi
546  );
547 
551 SCIP_EXPORT
552 SCIP_Bool SCIPsdpiIsAcceptable(
553  SCIP_SDPI* sdpi
554  );
555 
557 SCIP_EXPORT
558 SCIP_RETCODE SCIPsdpiGetObjval(
559  SCIP_SDPI* sdpi,
560  SCIP_Real* objval
561  );
562 
566 SCIP_EXPORT
567 SCIP_RETCODE SCIPsdpiGetLowerObjbound(
568  SCIP_SDPI* sdpi,
569  SCIP_Real* objlb
570  );
571 
575 SCIP_EXPORT
576 SCIP_RETCODE SCIPsdpiGetSol(
577  SCIP_SDPI* sdpi,
578  SCIP_Real* objval,
579  SCIP_Real* dualsol,
580  int* dualsollength
582  );
583 
585 SCIP_EXPORT
587  SCIP_SDPI* sdpi,
588  int nblocks,
589  int* startXnblocknonz
591  );
592 
600 SCIP_EXPORT
601 SCIP_RETCODE SCIPsdpiGetPreoptimalSol(
602  SCIP_SDPI* sdpi,
603  SCIP_Bool* success,
604  SCIP_Real* dualsol,
605  int* dualsollength,
607  int nblocks,
608  int* startXnblocknonz,
610  int** startXrow,
611  int** startXcol,
612  SCIP_Real** startXval
613  );
614 
620 SCIP_EXPORT
621 SCIP_RETCODE SCIPsdpiGetPrimalBoundVars(
622  SCIP_SDPI* sdpi,
623  SCIP_Real* lbvars,
624  SCIP_Real* ubvars,
625  int* arraylength
627  );
628 
630 SCIP_EXPORT
631 SCIP_RETCODE SCIPsdpiGetPrimalNonzeros(
632  SCIP_SDPI* sdpi,
633  int nblocks,
634  int* startXnblocknonz
635  );
636 
644 SCIP_EXPORT
645 SCIP_RETCODE SCIPsdpiGetPrimalMatrix(
646  SCIP_SDPI* sdpi,
647  int nblocks,
648  int* startXnblocknonz,
650  int** startXrow,
651  int** startXcol,
652  SCIP_Real** startXval
653  );
654 
656 SCIP_EXPORT
657 SCIP_Real SCIPsdpiGetMaxPrimalEntry(
658  SCIP_SDPI* sdpi
659  );
660 
662 SCIP_EXPORT
663 SCIP_RETCODE SCIPsdpiGetIterations(
664  SCIP_SDPI* sdpi,
665  int* iterations
666  );
667 
669 SCIP_EXPORT
670 SCIP_RETCODE SCIPsdpiGetSdpCalls(
671  SCIP_SDPI* sdpi,
672  int* calls
673  );
674 
676 SCIP_EXPORT
677 SCIP_RETCODE SCIPsdpiSettingsUsed(
678  SCIP_SDPI* sdpi,
679  SCIP_SDPSOLVERSETTING* usedsetting
680  );
681 
683 SCIP_EXPORT
684 SCIP_RETCODE SCIPsdpiSlaterSettings(
685  SCIP_SDPI* sdpi,
686  SCIP_SDPSLATERSETTING* slatersetting
687  );
688 
690 SCIP_EXPORT
691 SCIP_RETCODE SCIPsdpiSlater(
692  SCIP_SDPI* sdpi,
693  SCIP_SDPSLATER* primalslater,
694  SCIP_SDPSLATER* dualslater
695  );
696 
702 /*
703  * SDPi State Methods
704  */
705 
706 
707 
708 /*
709  * Numerical Methods
710  */
711 
716 SCIP_EXPORT
717 SCIP_Real SCIPsdpiInfinity(
718  SCIP_SDPI* sdpi
719  );
720 
722 SCIP_EXPORT
723 SCIP_Bool SCIPsdpiIsInfinity(
724  SCIP_SDPI* sdpi,
725  SCIP_Real val
726  );
727 
729 SCIP_EXPORT
730 SCIP_RETCODE SCIPsdpiGetRealpar(
731  SCIP_SDPI* sdpi,
732  SCIP_SDPPARAM type,
733  SCIP_Real* dval
734  );
735 
737 SCIP_EXPORT
738 SCIP_RETCODE SCIPsdpiSetRealpar(
739  SCIP_SDPI* sdpi,
740  SCIP_SDPPARAM type,
741  SCIP_Real dval
742  );
743 
745 SCIP_EXPORT
746 SCIP_RETCODE SCIPsdpiGetIntpar(
747  SCIP_SDPI* sdpi,
748  SCIP_SDPPARAM type,
749  int* ival
750  );
751 
753 SCIP_EXPORT
754 SCIP_RETCODE SCIPsdpiSetIntpar(
755  SCIP_SDPI* sdpi,
756  SCIP_SDPPARAM type,
757  int ival
758  );
759 
761 SCIP_EXPORT
762 SCIP_RETCODE SCIPsdpiComputeLambdastar(
763  SCIP_SDPI* sdpi,
764  SCIP_Real maxguess
765  );
766 
768 SCIP_EXPORT
769 SCIP_RETCODE SCIPsdpiComputePenaltyparam(
770  SCIP_SDPI* sdpi,
771  SCIP_Real maxcoeff,
772  SCIP_Real* penaltyparam
773  );
774 
776 SCIP_EXPORT
777 SCIP_RETCODE SCIPsdpiComputeMaxPenaltyparam(
778  SCIP_SDPI* sdpi,
779  SCIP_Real penaltyparam,
780  SCIP_Real* maxpenaltyparam
781  );
782 
788 /*
789  * File Interface Methods
790  */
791 
796 SCIP_EXPORT
797 SCIP_RETCODE SCIPsdpiReadSDP(
798  SCIP_SDPI* sdpi,
799  const char* fname
800  );
801 
803 SCIP_EXPORT
804 SCIP_RETCODE SCIPsdpiWriteSDP(
805  SCIP_SDPI* sdpi,
806  const char* fname
807  );
808 
811 #ifdef __cplusplus
812 }
813 #endif
814 
815 #endif
SCIP_EXPORT SCIP_RETCODE SCIPsdpiDelLPRowset(SCIP_SDPI *sdpi, int *dstat)
Definition: sdpi.c:2094
SCIP_EXPORT int SCIPsdpiGetInternalStatus(SCIP_SDPI *sdpi)
Definition: sdpi.c:3166
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)
Definition: sdpi.c:3417
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)
Definition: sdpi.c:2454
SCIP_EXPORT SCIP_RETCODE SCIPsdpiWriteSDP(SCIP_SDPI *sdpi, const char *fname)
Definition: sdpi.c:4260
SCIP_EXPORT SCIP_RETCODE SCIPsdpiClear(SCIP_SDPI *sdpi)
Definition: sdpi.c:2136
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetRealpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, SCIP_Real *dval)
Definition: sdpi.c:4026
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetLowerObjbound(SCIP_SDPI *sdpi, SCIP_Real *objlb)
Definition: sdpi.c:3278
SCIP_EXPORT SCIP_Real SCIPsdpiGetMaxPrimalEntry(SCIP_SDPI *sdpi)
Definition: sdpi.c:3582
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetBounds(SCIP_SDPI *sdpi, int firstvar, int lastvar, SCIP_Real *lbs, SCIP_Real *ubs)
Definition: sdpi.c:2365
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetNLPRows(SCIP_SDPI *sdpi, int *nlprows)
Definition: sdpi.c:2259
SCIP_EXPORT SCIP_Bool SCIPsdpiIsIterlimExc(SCIP_SDPI *sdpi)
Definition: sdpi.c:3108
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSdpCalls(SCIP_SDPI *sdpi, int *calls)
Definition: sdpi.c:3606
enum SCIP_SDPSolverSetting SCIP_SDPSOLVERSETTING
Definition: type_sdpi.h:80
SCIP_EXPORT const char * SCIPsdpiGetSolverName(void)
Definition: sdpi.c:1375
SCIP_EXPORT SCIP_RETCODE SCIPsdpiChgObj(SCIP_SDPI *sdpi, int nvars, const int *ind, const SCIP_Real *obj)
Definition: sdpi.c:2152
SCIP_EXPORT SCIP_Bool SCIPsdpiDoesWarmstartNeedPrimal(void)
Definition: sdpi.c:1428
SCIP_EXPORT SCIP_Bool SCIPsdpiIsConverged(SCIP_SDPI *sdpi)
Definition: sdpi.c:3064
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPreoptimalPrimalNonzeros(SCIP_SDPI *sdpi, int nblocks, int *startXnblocknonz)
Definition: sdpi.c:3379
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPrimalNonzeros(SCIP_SDPI *sdpi, int nblocks, int *startXnblocknonz)
Definition: sdpi.c:3523
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)
Definition: sdpi.c:1919
SCIP_RETCODE SCIPsdpiChgLPLhRhSides(SCIP_SDPI *sdpi, int nrows, const int *ind, const SCIP_Real *lhs, const SCIP_Real *rhs)
Definition: sdpi.c:2215
SCIP_EXPORT SCIP_Bool SCIPsdpiIsPrimalUnbounded(SCIP_SDPI *sdpi)
Definition: sdpi.c:2922
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSetRealpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, SCIP_Real dval)
Definition: sdpi.c:4076
SCIP_EXPORT SCIP_Real SCIPsdpiInfinity(SCIP_SDPI *sdpi)
Definition: sdpi.c:4005
SCIP_EXPORT void * SCIPsdpiGetSolverPointer(SCIP_SDPI *sdpi)
Definition: sdpi.c:1396
SCIP_EXPORT const char * SCIPsdpiGetSolverDesc(void)
Definition: sdpi.c:1383
SCIP_EXPORT SCIP_RETCODE SCIPsdpiDelLPRows(SCIP_SDPI *sdpi, int firstrow, int lastrow)
Definition: sdpi.c:1984
SCIP_EXPORT SCIP_Bool SCIPsdpiIsAcceptable(SCIP_SDPI *sdpi)
Definition: sdpi.c:3216
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetIterations(SCIP_SDPI *sdpi, int *iterations)
Definition: sdpi.c:3592
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)
Definition: sdpi.c:1699
enum SCIP_SDPSlaterSetting SCIP_SDPSLATERSETTING
Definition: type_sdpi.h:102
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSDPNNonz(SCIP_SDPI *sdpi, int *nnonz)
Definition: sdpi.c:2301
type definitions for specific SDP-solver interfaces
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetRhSides(SCIP_SDPI *sdpi, int firstrow, int lastrow, SCIP_Real *rhss)
Definition: sdpi.c:2415
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetConstNNonz(SCIP_SDPI *sdpi, int *nnonz)
Definition: sdpi.c:2315
SCIP_EXPORT SCIP_Bool SCIPsdpiIsTimelimExc(SCIP_SDPI *sdpi)
Definition: sdpi.c:3130
SCIP_EXPORT SCIP_RETCODE SCIPsdpiClone(SCIP_SDPI *oldsdpi, SCIP_SDPI *newsdpi)
Definition: sdpi.c:1579
SCIP_EXPORT SCIP_Bool SCIPsdpiFeasibilityKnown(SCIP_SDPI *sdpi)
Definition: sdpi.c:2878
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetLhSides(SCIP_SDPI *sdpi, int firstrow, int lastrow, SCIP_Real *lhss)
Definition: sdpi.c:2393
SCIP_EXPORT SCIP_Bool SCIPsdpiIsDualInfeasible(SCIP_SDPI *sdpi)
Definition: sdpi.c:3018
SCIP_EXPORT SCIP_Bool SCIPsdpiWasSolved(SCIP_SDPI *sdpi)
Definition: sdpi.c:2855
SCIP_EXPORT SCIP_Bool SCIPsdpiIsInfinity(SCIP_SDPI *sdpi, SCIP_Real val)
Definition: sdpi.c:4015
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSol(SCIP_SDPI *sdpi, SCIP_Real *objval, SCIP_Real *dualsol, int *dualsollength)
Definition: sdpi.c:3328
SCIP_EXPORT SCIP_Bool SCIPsdpiIsOptimal(SCIP_SDPI *sdpi)
Definition: sdpi.c:3192
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetNSDPBlocks(SCIP_SDPI *sdpi, int *nsdpblocks)
Definition: sdpi.c:2273
SCIP_EXPORT SCIP_Real SCIPsdpiGetDefaultSdpiSolverGaptol(void)
Definition: sdpi.c:1412
struct SCIP_SDPi SCIP_SDPI
Definition: type_sdpi.h:114
SCIP_EXPORT SCIP_Bool SCIPsdpiIsDualUnbounded(SCIP_SDPI *sdpi)
Definition: sdpi.c:2994
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSetIntpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, int ival)
Definition: sdpi.c:4158
SCIP_EXPORT SCIP_RETCODE SCIPsdpiFree(SCIP_SDPI **sdpi)
Definition: sdpi.c:1514
SCIP_EXPORT SCIP_RETCODE SCIPsdpiComputeMaxPenaltyparam(SCIP_SDPI *sdpi, SCIP_Real penaltyparam, SCIP_Real *maxpenaltyparam)
Definition: sdpi.c:4213
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetIntpar(SCIP_SDPI *sdpi, SCIP_SDPPARAM type, int *ival)
Definition: sdpi.c:4128
SCIP_EXPORT SCIP_Bool SCIPsdpiSolvedOrig(SCIP_SDPI *sdpi)
Definition: sdpi.c:2865
enum SCIP_SDPSlater SCIP_SDPSLATER
Definition: type_sdpi.h:112
SCIP_EXPORT SCIP_Real SCIPsdpiGetDefaultSdpiSolverFeastol(void)
Definition: sdpi.c:1404
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetObjval(SCIP_SDPI *sdpi, SCIP_Real *objval)
Definition: sdpi.c:3242
SCIP_EXPORT SCIP_RETCODE SCIPsdpiReadSDP(SCIP_SDPI *sdpi, const char *fname)
Definition: sdpi.c:4247
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPrimalBoundVars(SCIP_SDPI *sdpi, SCIP_Real *lbvars, SCIP_Real *ubvars, int *arraylength)
Definition: sdpi.c:3491
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetSolFeasibility(SCIP_SDPI *sdpi, SCIP_Bool *primalfeasible, SCIP_Bool *dualfeasible)
Definition: sdpi.c:2892
SCIP_EXPORT SCIP_RETCODE SCIPsdpiComputePenaltyparam(SCIP_SDPI *sdpi, SCIP_Real maxcoeff, SCIP_Real *penaltyparam)
Definition: sdpi.c:4199
SCIP_EXPORT SCIP_RETCODE SCIPsdpiComputeLambdastar(SCIP_SDPI *sdpi, SCIP_Real maxguess)
Definition: sdpi.c:4190
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSettingsUsed(SCIP_SDPI *sdpi, SCIP_SDPSOLVERSETTING *usedsetting)
Definition: sdpi.c:3620
enum SCIP_SDPParam SCIP_SDPPARAM
Definition: type_sdpi.h:69
SCIP_EXPORT int SCIPsdpiGetDefaultSdpiSolverNpenaltyIncreases(void)
Definition: sdpi.c:1420
SCIP_EXPORT SCIP_RETCODE SCIPsdpiCreate(SCIP_SDPI **sdpi, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, BMS_BUFMEM *bufmem)
Definition: sdpi.c:1446
SCIP_EXPORT SCIP_Bool SCIPsdpiIsPrimalInfeasible(SCIP_SDPI *sdpi)
Definition: sdpi.c:2946
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetObj(SCIP_SDPI *sdpi, int firstvar, int lastvar, SCIP_Real *vals)
Definition: sdpi.c:2343
SCIP_EXPORT SCIP_RETCODE SCIPsdpiChgBounds(SCIP_SDPI *sdpi, int nvars, const int *ind, const SCIP_Real *lb, const SCIP_Real *ub)
Definition: sdpi.c:2181
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSlaterSettings(SCIP_SDPI *sdpi, SCIP_SDPSLATERSETTING *slatersetting)
Definition: sdpi.c:3657
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetLPNNonz(SCIP_SDPI *sdpi, int *nnonz)
Definition: sdpi.c:2329
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetPrimalMatrix(SCIP_SDPI *sdpi, int nblocks, int *startXnblocknonz, int **startXrow, int **startXcol, SCIP_Real **startXval)
Definition: sdpi.c:3553
SCIP_EXPORT SCIP_Bool SCIPsdpiIsPrimalFeasible(SCIP_SDPI *sdpi)
Definition: sdpi.c:2970
SCIP_EXPORT SCIP_RETCODE SCIPsdpiGetNVars(SCIP_SDPI *sdpi, int *nvars)
Definition: sdpi.c:2287
SCIP_EXPORT SCIP_Bool SCIPsdpiIsDualFeasible(SCIP_SDPI *sdpi)
Definition: sdpi.c:3042
SCIP_EXPORT SCIP_Bool SCIPsdpiIsObjlimExc(SCIP_SDPI *sdpi)
Definition: sdpi.c:3086
SCIP_EXPORT SCIP_RETCODE SCIPsdpiSlater(SCIP_SDPI *sdpi, SCIP_SDPSLATER *primalslater, SCIP_SDPSLATER *dualslater)
Definition: sdpi.c:3962