/home/coin/SVN-release/Cbc-1.1.1/Clp/src/ClpSimplex.hpp File Reference

#include <iostream>
#include <cfloat>
#include "ClpModel.hpp"
#include "ClpMatrixBase.hpp"
#include "ClpSolve.hpp"

Include dependency graph for ClpSimplex.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ClpSimplex
 This solves LPs using the simplex method. More...
class  ClpSimplexProgress
 For saving extra information to see if looping. More...

status methods

#define COIN_CBC_USING_CLP   0x01000000
 For advanced options 1 - Don't keep changing infeasibility weight 2 - Keep nonLinearCost round solves 4 - Force outgoing variables to exact bound (primal) 8 - Safe to use dense initial factorization 16 -Just use basic variables for operation if column generation 32 -Clean up with primal before strong branching 64 -Treat problem as feasible until last minute (i.e.

Data

#define CLP_PROGRESS   5
#define CLP_CYCLE   12

Defines

#define DEVEX_TRY_NORM   1.0e-4
#define DEVEX_ADD_ONE   1.0

Functions

void ClpSimplexUnitTest (const std::string &mpsDir, const std::string &netlibDir)
 A function that tests the methods in the ClpSimplex class.


Define Documentation

#define COIN_CBC_USING_CLP   0x01000000

For advanced options 1 - Don't keep changing infeasibility weight 2 - Keep nonLinearCost round solves 4 - Force outgoing variables to exact bound (primal) 8 - Safe to use dense initial factorization 16 -Just use basic variables for operation if column generation 32 -Clean up with primal before strong branching 64 -Treat problem as feasible until last minute (i.e.

minimize infeasibilities) 128 - Switch off all matrix sanity checks 256 - No row copy 512 - If not in values pass, solution guaranteed, skip as much as possible 1024 - In branch and bound 2048 - Don't bother to re-factorize if < 20 iterations 4096 - Skip some optimality checks 8192 - Do Primal when cleaning up primal 16384 - In fast dual (so we can switch off things) 32678 - called from Osi NOTE - many applications can call Clp but there may be some short cuts which are taken which are not guaranteed safe from all applications. Vetted applications will have a bit set and the code may test this At present I expect a few such applications - if too many I will have to re-think. It is up to application owner to change the code if she/he needs these short cuts. I will not debug unless in Coin repository. See COIN_CLP_VETTED comments. 0x01000000 is Cbc (and in branch and bound)

Definition at line 967 of file ClpSimplex.hpp.

#define CLP_PROGRESS   5

Definition at line 1369 of file ClpSimplex.hpp.

#define CLP_CYCLE   12

Definition at line 1377 of file ClpSimplex.hpp.

#define DEVEX_TRY_NORM   1.0e-4

Definition at line 1398 of file ClpSimplex.hpp.

#define DEVEX_ADD_ONE   1.0

Definition at line 1399 of file ClpSimplex.hpp.


Function Documentation

void ClpSimplexUnitTest ( const std::string &  mpsDir,
const std::string &  netlibDir 
)

A function that tests the methods in the ClpSimplex class.

The only reason for it not to be a member method is that this way it doesn't have to be compiled into the library. And that's a gain, because the library should be compiled with optimization on, but this method should be compiled with debugging.

It also does some testing of ClpFactorization class


Generated on Thu May 15 21:59:23 2008 by  doxygen 1.4.7