Couenne 0.5.8
Loading...
Searching...
No Matches
BonCouenneInterface.hpp
Go to the documentation of this file.
1/* $Id: BonCouenneInterface.hpp 857 2012-06-11 17:52:32Z pbelotti $ */
2// (C) Copyright International Business Machines Corporation (IBM) 2006-09
3// All Rights Reserved.
4// This code is published under the Eclipse Public License (EPL).
5//
6// Authors :
7// Pietro Belotti, Carnegie Mellon University
8// Pierre Bonami, International Business Machines Corporation
9//
10// Date : 12/19/2006
11
12#ifndef CouenneInterface_H
13#define CouenneInterface_H
14
15#include "CouenneConfig.h"
17
18#ifdef COUENNEINTERFACE_FROM_ASL
19#include "BonAmplInterface.hpp"
20
21struct ASL;
22struct ASL *readASLfg (char **);
23#else
24#define AmplInterface OsiTMINLPInterface
25#endif
26
27namespace Bonmin {
28 class AmplInterface;
29}
30
31namespace Couenne {
32
34 {
35 public:
38
41
43 virtual CouenneInterface * clone(bool CopyData);
44
47
48 // My name is Couenne [ku:en]
49 virtual std::string appName() {return "couenne";}
50
51#ifdef COUENNEINTERFACE_FROM_ASL
53 virtual void readAmplNlFile(char **& argv, Ipopt::SmartPtr<Bonmin::RegisteredOptions> roptions,
56#endif
57
66 (OsiSolverInterface &si, CouenneCutGenerator & couenneCg, bool getObj = 1, bool solveNlp = 1);
67
68
71
74 {return have_nlp_solution_;}
75
76 protected:
77
80 };
81
82}
83
84#endif
#define AmplInterface
virtual void readAmplNlFile(char **&argv, Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions, Ipopt::SmartPtr< Ipopt::OptionsList > options, Ipopt::SmartPtr< Ipopt::Journalist > journalist, std::string *nl_file_content=NULL)
const Ipopt::SmartPtr< Ipopt::OptionsList > options() const
Cut Generator for linear convexifications.
CouenneInterface()
Default constructor.
virtual void setAppDefaultOptions(Ipopt::SmartPtr< Ipopt::OptionsList > Options)
To set some application specific defaults.
bool have_nlp_solution_
true if we got an integer feasible solution from initial solve
virtual ~CouenneInterface()
Destructor.
bool haveNlpSolution()
return value of have_nlp_solution_
virtual void extractLinearRelaxation(OsiSolverInterface &si, CouenneCutGenerator &couenneCg, bool getObj=1, bool solveNlp=1)
Extract a linear relaxation of the MINLP.
CouenneInterface(const CouenneInterface &other)
Copy constructor.
virtual CouenneInterface * clone(bool CopyData)
virutal copy constructor.
virtual std::string appName()
general include file for different compilers