SCIP-SDP  3.2.0
SdpVarfixer.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 
38 #ifndef __SDPVARFIXER_H__
39 #define __SDPVARFIXER_H__
40 
41 #include "scip/type_misc.h"
42 
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46 
50 SCIP_EXPORT
52  int* row, /* row indices */
53  int* col, /* column indices */
54  SCIP_Real* val, /* values */
55  int length /* length of the given arrays */
56  );
57 
66 SCIP_EXPORT
67 SCIP_RETCODE SCIPsdpVarfixerMergeArrays(
68  BMS_BLKMEM* blkmem,
69  SCIP_Real epsilon,
70  int* originrow,
71  int* origincol,
72  SCIP_Real* originval,
73  int originlength,
74  SCIP_Bool originsorted,
75  SCIP_Real scalar,
76  int* targetrow,
77  int* targetcol,
78  SCIP_Real* targetval,
79  int* targetlength,
81  int targetmemory
83  );
84 
93 SCIP_EXPORT
95  BMS_BLKMEM* blkmem,
96  SCIP_Real epsilon,
97  int* firstrow,
98  int* firstcol,
99  SCIP_Real* firstval,
100  int firstlength,
101  int* secondrow,
102  int* secondcol,
103  SCIP_Real* secondval,
104  int secondlength,
105  int* targetrow,
106  int* targetcol,
107  SCIP_Real* targetval,
108  int* targetlength
110  );
111 
112 #ifdef __cplusplus
113 }
114 #endif
115 
116 #endif
SCIP_EXPORT SCIP_RETCODE SCIPsdpVarfixerMergeArrays(BMS_BLKMEM *blkmem, SCIP_Real epsilon, int *originrow, int *origincol, SCIP_Real *originval, int originlength, SCIP_Bool originsorted, SCIP_Real scalar, int *targetrow, int *targetcol, SCIP_Real *targetval, int *targetlength, int targetmemory)
Definition: SdpVarfixer.c:87
SCIP_EXPORT void SCIPsdpVarfixerSortRowCol(int *row, int *col, SCIP_Real *val, int length)
Definition: SdpVarfixer.c:50
SCIP_EXPORT SCIP_RETCODE SCIPsdpVarfixerMergeArraysIntoNew(BMS_BLKMEM *blkmem, SCIP_Real epsilon, int *firstrow, int *firstcol, SCIP_Real *firstval, int firstlength, int *secondrow, int *secondcol, SCIP_Real *secondval, int secondlength, int *targetrow, int *targetcol, SCIP_Real *targetval, int *targetlength)
Definition: SdpVarfixer.c:253