summaryrefslogtreecommitdiff
path: root/build/Bonmin/include/coin/OsiSolverBranch.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'build/Bonmin/include/coin/OsiSolverBranch.hpp')
-rw-r--r--build/Bonmin/include/coin/OsiSolverBranch.hpp152
1 files changed, 0 insertions, 152 deletions
diff --git a/build/Bonmin/include/coin/OsiSolverBranch.hpp b/build/Bonmin/include/coin/OsiSolverBranch.hpp
deleted file mode 100644
index 98c4343..0000000
--- a/build/Bonmin/include/coin/OsiSolverBranch.hpp
+++ /dev/null
@@ -1,152 +0,0 @@
-// Copyright (C) 2005, International Business Machines
-// Corporation and others. All Rights Reserved.
-// This code is licensed under the terms of the Eclipse Public License (EPL).
-
-#ifndef OsiSolverBranch_H
-#define OsiSolverBranch_H
-
-class OsiSolverInterface;
-#include "CoinWarmStartBasis.hpp"
-
-//#############################################################################
-
-/** Solver Branch Class
-
- This provides information on a branch as a set of tighter bounds on both ways
-*/
-
-class OsiSolverBranch {
-
-public:
- ///@name Add and Get methods
- //@{
- /// Add a simple branch (i.e. first sets ub of floor(value), second lb of ceil(value))
- void addBranch(int iColumn, double value);
-
- /// Add bounds - way =-1 is first , +1 is second
- void addBranch(int way,int numberTighterLower, const int * whichLower, const double * newLower,
- int numberTighterUpper, const int * whichUpper, const double * newUpper);
- /// Add bounds - way =-1 is first , +1 is second
- void addBranch(int way,int numberColumns,const double * oldLower, const double * newLower,
- const double * oldUpper, const double * newUpper);
-
- /// Apply bounds
- void applyBounds(OsiSolverInterface & solver,int way) const;
- /// Returns true if current solution satsifies one side of branch
- bool feasibleOneWay(const OsiSolverInterface & solver) const;
- /// Starts
- inline const int * starts() const
- { return start_;}
- /// Which variables
- inline const int * which() const
- { return indices_;}
- /// Bounds
- inline const double * bounds() const
- { return bound_;}
- //@}
-
-
- ///@name Constructors and destructors
- //@{
- /// Default Constructor
- OsiSolverBranch();
-
- /// Copy constructor
- OsiSolverBranch(const OsiSolverBranch & rhs);
-
- /// Assignment operator
- OsiSolverBranch & operator=(const OsiSolverBranch & rhs);
-
- /// Destructor
- ~OsiSolverBranch ();
-
- //@}
-
-private:
- ///@name Private member data
- //@{
- /// Start of lower first, upper first, lower second, upper second
- int start_[5];
- /// Column numbers (if >= numberColumns treat as rows)
- int * indices_;
- /// New bounds
- double * bound_;
- //@}
-};
-//#############################################################################
-
-/** Solver Result Class
-
- This provides information on a result as a set of tighter bounds on both ways
-*/
-
-class OsiSolverResult {
-
-public:
- ///@name Add and Get methods
- //@{
- /// Create result
- void createResult(const OsiSolverInterface & solver,const double * lowerBefore,
- const double * upperBefore);
-
- /// Restore result
- void restoreResult(OsiSolverInterface & solver) const;
-
- /// Get basis
- inline const CoinWarmStartBasis & basis() const
- { return basis_;}
-
- /// Objective value (as minimization)
- inline double objectiveValue() const
- { return objectiveValue_;}
-
- /// Primal solution
- inline const double * primalSolution() const
- { return primalSolution_;}
-
- /// Dual solution
- inline const double * dualSolution() const
- { return dualSolution_;}
-
- /// Extra fixed
- inline const OsiSolverBranch & fixed() const
- { return fixed_;}
- //@}
-
-
- ///@name Constructors and destructors
- //@{
- /// Default Constructor
- OsiSolverResult();
-
- /// Constructor from solver
- OsiSolverResult(const OsiSolverInterface & solver,const double * lowerBefore,
- const double * upperBefore);
-
- /// Copy constructor
- OsiSolverResult(const OsiSolverResult & rhs);
-
- /// Assignment operator
- OsiSolverResult & operator=(const OsiSolverResult & rhs);
-
- /// Destructor
- ~OsiSolverResult ();
-
- //@}
-
-private:
- ///@name Private member data
- //@{
- /// Value of objective (if >= OsiSolverInterface::getInfinity() then infeasible)
- double objectiveValue_;
- /// Warm start information
- CoinWarmStartBasis basis_;
- /// Primal solution (numberColumns)
- double * primalSolution_;
- /// Dual solution (numberRows)
- double * dualSolution_;
- /// Which extra variables have been fixed (only way==-1 counts)
- OsiSolverBranch fixed_;
- //@}
-};
-#endif