source: trunk/include/ClpFactorization.hpp @ 63

Last change on this file since 63 was 63, checked in by jpfasano, 17 years ago

-modified to use CoinPragma?.h
-modified to compile w/MS Visual C++ and gcc (on cygwin) without errors or warnings.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1// Copyright (C) 2002, International Business Machines
2// Corporation and others.  All Rights Reserved.
3#ifndef ClpFactorization_H
4#define ClpFactorization_H
5
6
7#include "CoinPragma.hpp"
8
9#include "CoinFactorization.hpp"
10
11/** This just implements CoinFactorization when an ClpMatrixBase object
12    is passed.  It has no data.
13*/
14class ClpMatrixBase;
15class ClpSimplex;
16
17class ClpFactorization : public CoinFactorization {
18 
19public:
20  /**@name factorization */
21   //@{
22  /** When part of LP - given by basic variables.
23  Actually does factorization.
24  Arrays passed in have non negative value to say basic.
25  If status is okay, basic variables have pivot row - this is only needed
26  if increasingRows_ >1.
27  Allows scaling
28  If status is singular, then basic variables have pivot row
29  and ones thrown out have -1
30  returns 0 -okay, -1 singular, -2 too many in basis, -99 memory */
31  int factorize (const ClpSimplex * model, 
32                 const ClpMatrixBase * matrix, 
33                  int numberRows, int numberColumns,
34                  int rowIsBasic[], int columnIsBasic[] , 
35                 double areaFactor = 0.0);
36   //@}
37
38
39  /**@name Constructors, destructor */
40   //@{
41   /** Default constructor. */
42   ClpFactorization();
43   /** Destructor */
44   ~ClpFactorization();
45   //@}
46
47   /**@name Copy method */
48   //@{
49   /** The copy constructor. */
50   ClpFactorization(const ClpFactorization&);
51   /** The copy constructor from an CoinFactorization. */
52   ClpFactorization(const CoinFactorization&);
53
54   ClpFactorization& operator=(const ClpFactorization&);
55   //@}
56   
57   
58};
59
60#endif
Note: See TracBrowser for help on using the repository browser.