Dip  0.92.4
SmallIP_DecompApp2.h
Go to the documentation of this file.
1 //===========================================================================//
2 // This file is part of the Decomp Solver Framework. //
3 // //
4 // Decomp is distributed under the Common Public License as part of the //
5 // COIN-OR repository (http://www.coin-or.org). //
6 // //
7 // Authors: Matthew Galati, SAS Institute Inc. (matthew.galati@sas.com) //
8 // Ted Ralphs, Lehigh University (ted@lehigh.edu) //
9 // Jiadong Wang, Lehigh University (jiw408@lehigh.edu) //
10 // //
11 // Copyright (C) 2002-2019, Lehigh University, Matthew Galati, and Ted Ralphs//
12 // All Rights Reserved. //
13 //===========================================================================//
14 
15 #ifndef SMALLIP_DECOMPAPP2_INCLUDED
16 #define SMALLIP_DECOMPAPP2_INCLUDED
17 
18 //===========================================================================//
19 #include "DecompApp.h"
20 
21 //===========================================================================//
30 //===========================================================================//
31 class SmallIP_DecompApp : public DecompApp {
32 private:
34  const string m_classTag;
35 
37  double * m_objective;
38 
42 
44  OsiIpSolverInterface m_osi;
45 
46 public:
49  /* Create models. */
50  void createModels();
51 
52 public:
53  /* @name Inherited (from virtual) methods. */
54  virtual int generateInitVars(DecompVarList & initVars);
55  virtual DecompSolverStatus solveRelaxed(const int whichBlock,
56  const double * redCostX,
57  const double convexDual,
58  DecompVarList & varList);
59 
60 public:
62  DecompApp (utilParam),
63  m_classTag ("SMALL-APP"),
64  m_objective(NULL)
65  {
66  createModels();
67  }
68 
69  virtual ~SmallIP_DecompApp() {
71  };
72 };
73 
74 #endif
virtual DecompSolverStatus solveRelaxed(const int whichBlock, const double *redCostX, const double convexDual, DecompVarList &varList)
Initialize the dual vector for PhaseII of PC.
const string m_classTag
Class id tag (for log / debugging).
DecompConstraintSet m_modelPart2
OsiIpSolverInterface m_osi
OSI object to use with solveRelaxed.
virtual ~SmallIP_DecompApp()
#define UTIL_DELARR(x)
Definition: UtilMacros.h:29
SmallIP_DecompApp(UtilParameters &utilParam)
double * m_objective
The model objective coefficients (original space).
DecompConstraintSet m_modelPart1
The various model constraint systems used for different algos.
DecompSolverStatus
Definition: Decomp.h:208
std::list< DecompVar * > DecompVarList
Definition: Decomp.h:91
virtual int generateInitVars(DecompVarList &initVars)
Initialize the dual vector for PhaseII of PC.
The main application class.
Definition: DecompApp.h:48