Cbc  2.9.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Public Attributes | Private Attributes | List of all members
CbcSymmetry Class Reference

Class to deal with symmetry. More...

#include <CbcSymmetry.hpp>

+ Collaboration diagram for CbcSymmetry:

Classes

struct  less_than_str
 
struct  myclass
 
struct  myclass0
 
class  Node
 

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) More...
 
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
 
CbcNautygetNtyInfo ()
 
void setupSymmetry (const OsiSolverInterface &solver)
 empty if no NTY, symmetry data structure setup otherwise More...
 
Constructors and destructors
 CbcSymmetry ()
 Default constructor. More...
 
 CbcSymmetry (const CbcSymmetry &)
 Copy constructor. More...
 
CbcSymmetryoperator= (const CbcSymmetry &rhs)
 Assignment operator. More...
 
 ~CbcSymmetry ()
 Destructor. More...
 

Public Attributes

myclass0 node_sort
 
myclass index_sort
 

Private Attributes

std::vector< Nodenode_info_
 
CbcNautynauty_info_
 
int numberColumns_
 
int numberUsefulOrbits_
 
int numberUsefulObjects_
 
int * whichOrbit_
 

Detailed Description

Class to deal with symmetry.

Hacked from Couenne Thanks, but it had been nice to make sure that there are no symbol collisions when building Couenne with this Cbc.

Definition at line 69 of file CbcSymmetry.hpp.

Constructor & Destructor Documentation

CbcSymmetry::CbcSymmetry ( )

Default constructor.

CbcSymmetry::CbcSymmetry ( const CbcSymmetry )

Copy constructor.

CbcSymmetry::~CbcSymmetry ( )

Destructor.

Member Function Documentation

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 150 of file CbcSymmetry.hpp.

int CbcSymmetry::numberUsefulOrbits ( ) const
inline

Definition at line 152 of file CbcSymmetry.hpp.

int CbcSymmetry::numberUsefulObjects ( ) const
inline

Definition at line 154 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
bool CbcSymmetry::compare ( register Node a,
register Node b 
) const
inline
CbcNauty* CbcSymmetry::getNtyInfo ( )
inline

Definition at line 160 of file CbcSymmetry.hpp.

void CbcSymmetry::setupSymmetry ( const OsiSolverInterface solver)

empty if no NTY, symmetry data structure setup otherwise

Member Data Documentation

myclass0 CbcSymmetry::node_sort

Definition at line 140 of file CbcSymmetry.hpp.

myclass CbcSymmetry::index_sort

Definition at line 141 of file CbcSymmetry.hpp.

std::vector<Node> CbcSymmetry::node_info_
mutableprivate

Definition at line 168 of file CbcSymmetry.hpp.

CbcNauty* CbcSymmetry::nauty_info_
mutableprivate

Definition at line 169 of file CbcSymmetry.hpp.

int CbcSymmetry::numberColumns_
private

Definition at line 170 of file CbcSymmetry.hpp.

int CbcSymmetry::numberUsefulOrbits_
private

Definition at line 171 of file CbcSymmetry.hpp.

int CbcSymmetry::numberUsefulObjects_
private

Definition at line 172 of file CbcSymmetry.hpp.

int* CbcSymmetry::whichOrbit_
private

Definition at line 173 of file CbcSymmetry.hpp.


The documentation for this class was generated from the following file: