diff options
author | Georgey | 2017-07-05 11:40:43 +0530 |
---|---|---|
committer | Georgey | 2017-07-05 11:40:43 +0530 |
commit | 938fef4a37a7b7c61b4b6ff74cb4cfd2f100c427 (patch) | |
tree | b343c0ee5609433c80e0de1db8b6886c9126dc2d /thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp | |
parent | 5b72577efe080c5294b32d804e4d26351fef30bc (diff) | |
download | FOSSEE-Optimization-toolbox-938fef4a37a7b7c61b4b6ff74cb4cfd2f100c427.tar.gz FOSSEE-Optimization-toolbox-938fef4a37a7b7c61b4b6ff74cb4cfd2f100c427.tar.bz2 FOSSEE-Optimization-toolbox-938fef4a37a7b7c61b4b6ff74cb4cfd2f100c427.zip |
Added linux shared libraries and header files for int and ecos functions
Diffstat (limited to 'thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp')
-rw-r--r-- | thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp b/thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp new file mode 100644 index 0000000..a380945 --- /dev/null +++ b/thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp @@ -0,0 +1,62 @@ +// $Id: CbcBranchAllDifferent.hpp 1899 2013-04-09 18:12:08Z stefan $ +// Copyright (C) 2004, International Business Machines +// Corporation and others. All Rights Reserved. +// This code is licensed under the terms of the Eclipse Public License (EPL). + +// Edwin 11/13/2009-- carved out of CbcBranchCut + +#ifndef CbcBranchAllDifferent_H +#define CbcBranchAllDifferent_H + +#include "CbcBranchBase.hpp" +#include "OsiRowCut.hpp" +#include "CoinPackedMatrix.hpp" +#include "CbcBranchCut.hpp" + +/** Define a branch class that branches so that it is only satsified if all + members have different values + So cut is x <= y-1 or x >= y+1 +*/ + + +class CbcBranchAllDifferent : public CbcBranchCut { + +public: + + // Default Constructor + CbcBranchAllDifferent (); + + /** Useful constructor - passed set of integer variables which must all be different + */ + CbcBranchAllDifferent (CbcModel * model, int number, const int * which); + + // Copy constructor + CbcBranchAllDifferent ( const CbcBranchAllDifferent &); + + /// Clone + virtual CbcObject * clone() const; + + // Assignment operator + CbcBranchAllDifferent & operator=( const CbcBranchAllDifferent& rhs); + + // Destructor + ~CbcBranchAllDifferent (); + + /// Infeasibility - large is 0.5 + virtual double infeasibility(const OsiBranchingInformation * info, + int &preferredWay) const; + + /// Creates a branching object + virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface * solver, const OsiBranchingInformation * info, int way) ; + + +protected: + /// data + + /// Number of entries + int numberInSet_; + /// Which variables + int * which_; +}; +#endif + |