- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# /home/coin/SVN-release/Cgl-0.55.0/Clp/src/ClpConstraintLinear.hpp

Go to the documentation of this file.

    00001 /* $Id: ClpConstraintLinear.hpp 1370 2009-06-04 09:37:13Z forrest $ */
    00002 // Copyright (C) 2007, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004 #ifndef ClpConstraintLinear_H
    00005 #define ClpConstraintLinear_H
    00006
    00007 #include "ClpConstraint.hpp"
    00008
    00009 //#############################################################################
    00010
    00015 class ClpConstraintLinear : public ClpConstraint {
    00016
    00017 public:
    00018
    00020
    00021
    00022
    00029   virtual int gradient(const ClpSimplex * model,
    00030                        const double * solution,
    00031                        double * gradient,
    00032                        double & functionValue ,
    00033                        double & offset,
    00034                        bool useScaling=false,
    00035                        bool refresh=true) const ;
    00037   virtual void resize(int newNumberColumns) ;
    00039   virtual void deleteSome(int numberToDelete, const int * which) ;
    00041   virtual void reallyScale(const double * columnScale) ;
    00045   virtual int markNonlinear(char * which) const ;
    00049   virtual int markNonzero(char * which) const;
    00051
    00052
    00054
    00055
    00056   ClpConstraintLinear();
    00057
    00059   ClpConstraintLinear(int row, int numberCoefficients, int numberColumns,
    00060                       const int * column, const double * element);
    00061
    00064   ClpConstraintLinear(const ClpConstraintLinear & rhs);
    00065
    00067   ClpConstraintLinear & operator=(const ClpConstraintLinear& rhs);
    00068
    00070   virtual ~ClpConstraintLinear ();
    00071
    00073   virtual ClpConstraint * clone() const;
    00075
    00076
    00077
    00078   virtual int numberCoefficients() const;
    00080   inline int numberColumns() const
    00081   {return numberColumns_;}
    00083   inline const int * column() const
    00084   { return column_;}
    00086   inline const double * coefficient() const
    00087   { return coefficient_;}
    00089
    00090   //---------------------------------------------------------------------------
    00091
    00092 private:
    00095   int * column_;
    00097   double * coefficient_;
    00099   int numberColumns_;
    00101   int numberCoefficients_;
    00103 };
    00104
    00105 #endif