SCIP-SDP  3.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
prop_companalcent.c
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* Copyright (C) 2002-2017 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not email to scip@zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
21 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
22 
23 #include <assert.h>
24 
25 #include "prop_companalcent.h"
26 #include "relax_sdp.h"
27 
28 /* fundamental propagator properties */
29 #define PROP_NAME "companalcent"
30 #define PROP_DESC "computes analytic center and forwards it to SDP relaxation handler"
31 #define PROP_PRIORITY 0
32 #define PROP_FREQ 0
33 #define PROP_DELAY FALSE
34 #define PROP_TIMING SCIP_PROPTIMING_AFTERLPLOOP
37 /*
38  * Data structures
39  */
40 
41 
42 /*
43  * Local methods
44  */
45 
46 /* put your local methods here, and declare them static */
47 
48 
49 /*
50  * Callback methods of propagator
51  */
52 
54 static
55 SCIP_DECL_PROPEXEC(propExecCompAnalCent)
56 { /*lint --e{715}*/
57  SCIP_RELAX* relax;
58 
59  relax = SCIPfindRelax(scip, "SDP"); /* get SDP relaxation handler */
60  assert( relax != NULL );
61 
62  SCIP_CALL( SCIPrelaxSdpComputeAnalyticCenters(scip, relax) );
63 
64  return SCIP_OKAY;
65 }
66 
67 
68 /*
69  * propagator specific interface methods
70  */
71 
74  SCIP* scip
75  )
76 {
77  SCIP_PROPDATA* propdata;
78  SCIP_PROP* prop;
79 
80  /* create xyz propagator data */
81  propdata = NULL;
82  prop = NULL;
83 
84  /* include propagator */
85  SCIP_CALL( SCIPincludePropBasic(scip, &prop, PROP_NAME, PROP_DESC, PROP_PRIORITY, PROP_FREQ, PROP_DELAY, PROP_TIMING,
86  propExecCompAnalCent, propdata) );
87 
88  assert(prop != NULL);
89 
90  return SCIP_OKAY;
91 }
SCIP_RETCODE SCIPincludePropCompAnalCent(SCIP *scip)
#define PROP_TIMING
static SCIP_DECL_PROPEXEC(propExecCompAnalCent)
SDP-relaxator.
#define PROP_PRIORITY
#define PROP_DELAY
#define PROP_FREQ
compute analytic center propagator
#define PROP_DESC
#define PROP_NAME
SCIP_RETCODE SCIPrelaxSdpComputeAnalyticCenters(SCIP *scip, SCIP_RELAX *relax)
Definition: relax_sdp.c:4410