AbcDualRowDantzig Class Reference

Dual Row Pivot Dantzig Algorithm Class. More...

#include <AbcDualRowDantzig.hpp>

Inheritance diagram for AbcDualRowDantzig:
Inheritance graph
[legend]
Collaboration diagram for AbcDualRowDantzig:
Collaboration graph
[legend]

List of all members.

Public Member Functions

Algorithmic methods



virtual int pivotRow ()
 Returns pivot row, -1 if none.
virtual double updateWeights (CoinIndexedVector &input, CoinIndexedVector &updatedColumn)
 Updates weights and returns pivot alpha.
virtual double updateWeights1 (CoinIndexedVector &input, CoinIndexedVector &updateColumn)
 Returns pivot row, -1 if none.
virtual void updateWeightsOnly (CoinIndexedVector &)
 Returns pivot row, -1 if none.
virtual void updateWeights2 (CoinIndexedVector &input, CoinIndexedVector &)
 Actually updates weights.
virtual void updatePrimalSolution (CoinIndexedVector &input, double theta)
 Updates primal solution (and maybe list of candidates) Uses input vector which it deletes Computes change in objective function.
virtual void saveWeights (AbcSimplex *model, int mode)
 Saves any weights round factorization as pivot rows may change Will be empty unless steepest edge (will save model) May also recompute infeasibility stuff 1) before factorization 2) after good factorization (if weights empty may initialize) 3) after something happened but no factorization (e.g.
virtual void recomputeInfeasibilities ()
 Recompute infeasibilities.
Constructors and destructors



 AbcDualRowDantzig ()
 Default Constructor.
 AbcDualRowDantzig (const AbcDualRowDantzig &)
 Copy constructor.
AbcDualRowDantzigoperator= (const AbcDualRowDantzig &rhs)
 Assignment operator.
virtual ~AbcDualRowDantzig ()
 Destructor.
virtual AbcDualRowPivotclone (bool copyData=true) const
 Clone.

Private Attributes

Private member data

infeasibility array (just for infeasible rows)



CoinIndexedVectorinfeasible_

Detailed Description

Dual Row Pivot Dantzig Algorithm Class.

This is simplest choice - choose largest infeasibility

Definition at line 19 of file AbcDualRowDantzig.hpp.


Constructor & Destructor Documentation

AbcDualRowDantzig::AbcDualRowDantzig (  ) 

Default Constructor.

AbcDualRowDantzig::AbcDualRowDantzig ( const AbcDualRowDantzig  ) 

Copy constructor.

virtual AbcDualRowDantzig::~AbcDualRowDantzig (  )  [virtual]

Destructor.


Member Function Documentation

virtual int AbcDualRowDantzig::pivotRow (  )  [virtual]

Returns pivot row, -1 if none.

Implements AbcDualRowPivot.

virtual double AbcDualRowDantzig::updateWeights ( CoinIndexedVector input,
CoinIndexedVector updatedColumn 
) [virtual]

Updates weights and returns pivot alpha.

Also does FT update

Implements AbcDualRowPivot.

virtual double AbcDualRowDantzig::updateWeights1 ( CoinIndexedVector input,
CoinIndexedVector updateColumn 
) [virtual]

Returns pivot row, -1 if none.

Implements AbcDualRowPivot.

virtual void AbcDualRowDantzig::updateWeightsOnly ( CoinIndexedVector  )  [inline, virtual]

Returns pivot row, -1 if none.

Implements AbcDualRowPivot.

Definition at line 33 of file AbcDualRowDantzig.hpp.

virtual void AbcDualRowDantzig::updateWeights2 ( CoinIndexedVector input,
CoinIndexedVector  
) [inline, virtual]

Actually updates weights.

Implements AbcDualRowPivot.

Definition at line 35 of file AbcDualRowDantzig.hpp.

virtual void AbcDualRowDantzig::updatePrimalSolution ( CoinIndexedVector input,
double  theta 
) [virtual]

Updates primal solution (and maybe list of candidates) Uses input vector which it deletes Computes change in objective function.

Implements AbcDualRowPivot.

virtual void AbcDualRowDantzig::saveWeights ( AbcSimplex model,
int  mode 
) [virtual]

Saves any weights round factorization as pivot rows may change Will be empty unless steepest edge (will save model) May also recompute infeasibility stuff 1) before factorization 2) after good factorization (if weights empty may initialize) 3) after something happened but no factorization (e.g.

check for infeasible) 4) as 2 but restore weights from previous snapshot 5) for strong branching - initialize , infeasibilities

Reimplemented from AbcDualRowPivot.

virtual void AbcDualRowDantzig::recomputeInfeasibilities (  )  [virtual]

Recompute infeasibilities.

Reimplemented from AbcDualRowPivot.

AbcDualRowDantzig& AbcDualRowDantzig::operator= ( const AbcDualRowDantzig rhs  ) 

Assignment operator.

Reimplemented from AbcDualRowPivot.

virtual AbcDualRowPivot* AbcDualRowDantzig::clone ( bool  copyData = true  )  const [virtual]

Clone.

Implements AbcDualRowPivot.


Member Data Documentation

Definition at line 82 of file AbcDualRowDantzig.hpp.


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

Generated on 5 Apr 2015 by  doxygen 1.6.1