# AbcDualRowDantzig Class Reference

Dual Row Pivot Dantzig Algorithm Class. More...

`#include <AbcDualRowDantzig.hpp>`

Inheritance diagram for AbcDualRowDantzig:
[legend]
Collaboration diagram for AbcDualRowDantzig:
[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.
AbcDualRowDantzig & | operator= (const AbcDualRowDantzig &rhs)
| Assignment operator.
virtual | ~AbcDualRowDantzig ()
| Destructor.
virtual AbcDualRowPivot * | clone (bool copyData=true) const
| Clone.
## Private Attributes
Private member data
infeasibility array (just for infeasible rows)
CoinIndexedVector * | infeasible_

## 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

CoinIndexedVector* AbcDualRowDantzig::infeasible_`[private]`

Definition at line 82 of file AbcDualRowDantzig.hpp.

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

- /home/coin/svn-release/Alps-1.4.8/Clp/src/AbcDualRowDantzig.hpp