CutPool::CutInfo Class Reference

Class for communication between CutPool and LinearRelax. More...

#include <cuts.h>

List of all members.

Public Member Functions

 CutInfo (list< Cut< SimpleCut > >::iterator &it, int bnr)
 CutInfo (list< Cut< LinearizationCut > >::iterator &it, int bnr)
 CutInfo (list< Cut< IntervalGradientCut > >::iterator &it_intgradcuts_, int bnr)
pair< bool, bool > set_inactivetime (Pointer< MinlpNode > node, int limit)

Public Attributes

list< Cut< SimpleCut
> >::iterator 
it_simplecuts
 A pointer to the cut, if it's a simple cut.
list< Cut< IntervalGradientCut
> >::iterator 
it_intgradcuts
 A pointer to the cut, if it's a IntervalGradientCut.
list< Cut< LinearizationCut
> >::iterator 
it_linearizationcuts
 A pointer to the cut, if it's a LinearizationCut.
CutType type
 The kind of cut.
int block_nr
bool inactive
 Set by LinearRelax, if the cut was inactive.
bool removed
 Set by CutPool, if the cut was removed or the node was removed for the cut.
list< const MIPSolver::RowItem * > rowitems
 Set by LinearRelaxSolver, to remember the constraints in the MIPSolver, which were added for this cut.
list< const MIPSolver::ColItem * > colitems
 Set by LinearRelaxSolver, to remember the variables in the MIPSolver, which were added for this cut.

Friends

class CutPool


Detailed Description

Class for communication between CutPool and LinearRelax.

Adding a cut, returnes a CutInfo, so the linear relaxation can remember a cut, which is added to it. Solving the linear relaxation sets the inactive flag. This is checked by update_nodeinfo, which sets the removed flag. This flag can be checked by LinearRelax again.

Definition at line 271 of file cuts.h.


Constructor & Destructor Documentation

CutPool::CutInfo::CutInfo ( list< Cut< SimpleCut > >::iterator &  it,
int  bnr 
) [inline]

Definition at line 306 of file cuts.h.

CutPool::CutInfo::CutInfo ( list< Cut< LinearizationCut > >::iterator &  it,
int  bnr 
) [inline]

Definition at line 310 of file cuts.h.

CutPool::CutInfo::CutInfo ( list< Cut< IntervalGradientCut > >::iterator &  it_intgradcuts_,
int  bnr 
) [inline]

Definition at line 314 of file cuts.h.


Member Function Documentation

pair<bool, bool> CutPool::CutInfo::set_inactivetime ( Pointer< MinlpNode node,
int  limit 
)


Friends And Related Function Documentation

friend class CutPool [friend]

Definition at line 272 of file cuts.h.


Member Data Documentation

list<Cut<SimpleCut> >::iterator CutPool::CutInfo::it_simplecuts

A pointer to the cut, if it's a simple cut.

Definition at line 276 of file cuts.h.

list<Cut<IntervalGradientCut> >::iterator CutPool::CutInfo::it_intgradcuts

A pointer to the cut, if it's a IntervalGradientCut.

Definition at line 280 of file cuts.h.

list<Cut<LinearizationCut> >::iterator CutPool::CutInfo::it_linearizationcuts

A pointer to the cut, if it's a LinearizationCut.

Definition at line 284 of file cuts.h.

CutType CutPool::CutInfo::type

The kind of cut.

Definition at line 288 of file cuts.h.

int CutPool::CutInfo::block_nr

Definition at line 290 of file cuts.h.

bool CutPool::CutInfo::inactive

Set by LinearRelax, if the cut was inactive.

Definition at line 293 of file cuts.h.

bool CutPool::CutInfo::removed

Set by CutPool, if the cut was removed or the node was removed for the cut.

Definition at line 296 of file cuts.h.

list<const MIPSolver::RowItem*> CutPool::CutInfo::rowitems

Set by LinearRelaxSolver, to remember the constraints in the MIPSolver, which were added for this cut.

Definition at line 300 of file cuts.h.

list<const MIPSolver::ColItem*> CutPool::CutInfo::colitems

Set by LinearRelaxSolver, to remember the variables in the MIPSolver, which were added for this cut.

Definition at line 304 of file cuts.h.


The documentation for this class was generated from the following file:
Generated on Mon Oct 20 03:12:26 2008 for LaGO by  doxygen 1.4.7