Class to deal with symmetry. More...
#include <CbcSymmetry.hpp>
Public Member Functions | |
std::vector< int > * | Find_Orbit (int) const |
void | Compute_Symmetry () const |
int | statsOrbits (CbcModel *model, int type) const |
void | Print_Orbits () const |
void | fillOrbits () |
int | orbitalFixing (OsiSolverInterface *solver) |
Fixes variables using orbits (returns number fixed). | |
int * | whichOrbit () |
int | numberUsefulOrbits () const |
int | numberUsefulObjects () const |
int | largestOrbit (const double *lower, const double *upper) const |
void | ChangeBounds (const double *lower, const double *upper, int numberColumns, bool justFixedAtOne) const |
bool | compare (register Node &a, register Node &b) const |
CbcNauty * | getNtyInfo () |
void | setupSymmetry (const OsiSolverInterface &solver) |
empty if no NTY, symmetry data structure setup otherwise | |
Constructors and destructors | |
CbcSymmetry () | |
Default constructor. | |
CbcSymmetry (const CbcSymmetry &) | |
Copy constructor. | |
CbcSymmetry & | operator= (const CbcSymmetry &rhs) |
Assignment operator. | |
~CbcSymmetry () | |
Destructor. | |
Public Attributes | |
myclass0 | node_sort |
myclass | index_sort |
Private Attributes | |
std::vector< Node > | node_info_ |
CbcNauty * | nauty_info_ |
int | numberColumns_ |
int | numberUsefulOrbits_ |
int | numberUsefulObjects_ |
int * | whichOrbit_ |
Class to deal with symmetry.
Hacked from Couenne
Definition at line 114 of file CbcSymmetry.hpp.
CbcSymmetry::CbcSymmetry | ( | ) |
Default constructor.
CbcSymmetry::CbcSymmetry | ( | const CbcSymmetry & | ) |
Copy constructor.
CbcSymmetry::~CbcSymmetry | ( | ) |
Destructor.
CbcSymmetry& CbcSymmetry::operator= | ( | const CbcSymmetry & | rhs | ) |
Assignment operator.
std::vector<int>* CbcSymmetry::Find_Orbit | ( | int | ) | const |
void CbcSymmetry::Compute_Symmetry | ( | ) | const |
int CbcSymmetry::statsOrbits | ( | CbcModel * | model, | |
int | type | |||
) | const |
void CbcSymmetry::Print_Orbits | ( | ) | const |
void CbcSymmetry::fillOrbits | ( | ) |
int CbcSymmetry::orbitalFixing | ( | OsiSolverInterface * | solver | ) |
Fixes variables using orbits (returns number fixed).
int* CbcSymmetry::whichOrbit | ( | ) | [inline] |
Definition at line 147 of file CbcSymmetry.hpp.
int CbcSymmetry::numberUsefulOrbits | ( | ) | const [inline] |
Definition at line 149 of file CbcSymmetry.hpp.
int CbcSymmetry::numberUsefulObjects | ( | ) | const [inline] |
Definition at line 151 of file CbcSymmetry.hpp.
int CbcSymmetry::largestOrbit | ( | const double * | lower, | |
const double * | upper | |||
) | const |
void CbcSymmetry::ChangeBounds | ( | const double * | lower, | |
const double * | upper, | |||
int | numberColumns, | |||
bool | justFixedAtOne | |||
) | const |
CbcNauty* CbcSymmetry::getNtyInfo | ( | ) | [inline] |
Definition at line 157 of file CbcSymmetry.hpp.
void CbcSymmetry::setupSymmetry | ( | const OsiSolverInterface & | solver | ) |
empty if no NTY, symmetry data structure setup otherwise
Definition at line 137 of file CbcSymmetry.hpp.
Definition at line 138 of file CbcSymmetry.hpp.
std::vector<Node> CbcSymmetry::node_info_ [mutable, private] |
Definition at line 165 of file CbcSymmetry.hpp.
CbcNauty* CbcSymmetry::nauty_info_ [mutable, private] |
Definition at line 166 of file CbcSymmetry.hpp.
int CbcSymmetry::numberColumns_ [private] |
Definition at line 167 of file CbcSymmetry.hpp.
int CbcSymmetry::numberUsefulOrbits_ [private] |
Definition at line 168 of file CbcSymmetry.hpp.
int CbcSymmetry::numberUsefulObjects_ [private] |
Definition at line 169 of file CbcSymmetry.hpp.
int* CbcSymmetry::whichOrbit_ [private] |
Definition at line 170 of file CbcSymmetry.hpp.