Go to the documentation of this file.
11 #ifndef ClpNetworkBasis_H
12 #define ClpNetworkBasis_H
15 class CoinIndexedVector;
17 #include "CoinTypes.hpp"
18 #ifndef COIN_FAST_CODE
19 #define COIN_FAST_CODE
34 int numberRows,
const CoinFactorizationDouble *pivotRegion,
35 const int *permuteBack,
const int *startColumn,
36 const int *numberInColumn,
37 const int *indexRow,
const CoinFactorizationDouble *element);
58 int rowIsBasic[],
int columnIsBasic[]);
78 CoinIndexedVector *regionSparse2,
86 double array[])
const;
94 double array[])
const;
97 CoinIndexedVector *regionSparse2)
const;
107 #ifndef COIN_FAST_CODE
This solves LPs using the simplex method.
int * permuteBack_
Permute back array.
int factorize(const ClpMatrixBase *matrix, int rowIsBasic[], int columnIsBasic[])
When part of LP - given by basic variables.
int * stack2_
Second stack.
ClpNetworkBasis()
Default constructor.
int replaceColumn(CoinIndexedVector *column, int pivotRow)
Replaces one Column to basis, returns 0=OK, 1=Probably OK, 2=singular!!
~ClpNetworkBasis()
Destructor.
int * leftSibling_
Left sibling.
double updateColumn(CoinIndexedVector *regionSparse, CoinIndexedVector *regionSparse2, int pivotRow)
Updates one column (FTRAN) from region, Returns pivot value if "pivotRow" >=0.
int * rightSibling_
Right sibling.
const ClpSimplex * model_
model
This deals with Factorization and Updates for network structures.
int * permute_
Permute into array.
Abstract base class for Clp Matrices.
char * mark_
To mark rows.
int numberColumns_
Number of Columns in factorization.
int * descendant_
Descendant.
int * parent_
Parent for each column.
ClpNetworkBasis & operator=(const ClpNetworkBasis &other)
= copy
double * sign_
Sign of pivot.
int updateColumnTranspose(CoinIndexedVector *regionSparse, double array[]) const
Updates one column transpose (BTRAN) For large problems you should ALWAYS know where the nonzeros are...
int numberRows_
Number of Rows in factorization.