Clp
1.17.11
Toggle main menu visibility
Loading...
Searching...
No Matches
Clp
src
AbcDualRowDantzig.hpp
Go to the documentation of this file.
1
/* $Id$ */
2
// Copyright (C) 2002, International Business Machines
3
// Corporation and others, Copyright (C) 2012, FasterCoin. All Rights Reserved.
4
// This code is licensed under the terms of the Eclipse Public License (EPL).
5
6
#ifndef AbcDualRowDantzig_H
7
#define AbcDualRowDantzig_H
8
9
#include "
AbcDualRowPivot.hpp
"
10
11
//#############################################################################
12
18
19
class
AbcDualRowDantzig
:
public
AbcDualRowPivot
{
20
21
public
:
23
24
26
virtual
int
pivotRow
();
27
30
virtual
double
updateWeights
(CoinIndexedVector &input, CoinIndexedVector &updatedColumn);
31
virtual
double
updateWeights1
(CoinIndexedVector &input, CoinIndexedVector &updateColumn);
32
virtual
void
updateWeightsOnly
(CoinIndexedVector &
/*input*/
) {};
34
virtual
void
updateWeights2
(CoinIndexedVector &input, CoinIndexedVector &
/*updateColumn*/
) { input.clear(); };
39
virtual
void
updatePrimalSolution
(CoinIndexedVector &input,
40
double
theta);
51
virtual
void
saveWeights
(
AbcSimplex
*
model
,
int
mode);
53
virtual
void
recomputeInfeasibilities
();
55
57
58
59
AbcDualRowDantzig
();
60
62
AbcDualRowDantzig
(
const
AbcDualRowDantzig
&);
63
65
AbcDualRowDantzig
&
operator=
(
const
AbcDualRowDantzig
&rhs);
66
68
virtual
~AbcDualRowDantzig
();
69
71
virtual
AbcDualRowPivot
*
clone
(
bool
copyData =
true
)
const
;
72
74
75
//---------------------------------------------------------------------------
76
77
private
:
80
CoinIndexedVector *
infeasible_
;
82
};
83
84
#endif
85
86
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
87
*/
AbcDualRowPivot.hpp
AbcSimplex
#define AbcSimplex
Definition
AbcWarmStart.hpp:16
AbcDualRowDantzig::infeasible_
CoinIndexedVector * infeasible_
Definition
AbcDualRowDantzig.hpp:80
AbcDualRowDantzig::updateWeights
virtual double updateWeights(CoinIndexedVector &input, CoinIndexedVector &updatedColumn)
Updates weights and returns pivot alpha.
AbcDualRowDantzig::operator=
AbcDualRowDantzig & operator=(const AbcDualRowDantzig &rhs)
Assignment operator.
AbcDualRowDantzig::~AbcDualRowDantzig
virtual ~AbcDualRowDantzig()
Destructor.
AbcDualRowDantzig::saveWeights
virtual void saveWeights(AbcSimplex *model, int mode)
Saves any weights round factorization as pivot rows may change Will be empty unless steepest edge (wi...
AbcDualRowDantzig::updateWeightsOnly
virtual void updateWeightsOnly(CoinIndexedVector &)
Definition
AbcDualRowDantzig.hpp:32
AbcDualRowDantzig::AbcDualRowDantzig
AbcDualRowDantzig(const AbcDualRowDantzig &)
Copy constructor.
AbcDualRowDantzig::clone
virtual AbcDualRowPivot * clone(bool copyData=true) const
Clone.
AbcDualRowDantzig::updateWeights2
virtual void updateWeights2(CoinIndexedVector &input, CoinIndexedVector &)
Actually updates weights.
Definition
AbcDualRowDantzig.hpp:34
AbcDualRowDantzig::updateWeights1
virtual double updateWeights1(CoinIndexedVector &input, CoinIndexedVector &updateColumn)
Does most of work for weights and returns pivot alpha.
AbcDualRowDantzig::recomputeInfeasibilities
virtual void recomputeInfeasibilities()
Recompute infeasibilities.
AbcDualRowDantzig::AbcDualRowDantzig
AbcDualRowDantzig()
Default Constructor.
AbcDualRowDantzig::updatePrimalSolution
virtual void updatePrimalSolution(CoinIndexedVector &input, double theta)
Updates primal solution (and maybe list of candidates) Uses input vector which it deletes Computes ch...
AbcDualRowDantzig::pivotRow
virtual int pivotRow()
Returns pivot row, -1 if none.
AbcDualRowPivot::model
AbcSimplex * model()
Returns model.
Definition
AbcDualRowPivot.hpp:97
AbcDualRowPivot::AbcDualRowPivot
AbcDualRowPivot()
Default Constructor.
Generated by
1.17.0