/home/coin/SVN-release/CoinAll-1.1.0/Clp/src/ClpConstraintLinear.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2007, International Business Machines
00002 // Corporation and others.  All Rights Reserved.
00003 #ifndef ClpConstraintLinear_H
00004 #define ClpConstraintLinear_H
00005 
00006 #include "ClpConstraint.hpp"
00007 
00008 //#############################################################################
00009 
00014 class ClpConstraintLinear : public ClpConstraint {
00015   
00016 public:
00017   
00019 
00020   
00021   
00028   virtual int gradient(const ClpSimplex * model,
00029                        const double * solution,
00030                        double * gradient,
00031                        double & functionValue ,
00032                        double & offset,
00033                        bool useScaling=false,
00034                        bool refresh=true) const ;
00036   virtual void resize(int newNumberColumns) ; 
00038   virtual void deleteSome(int numberToDelete, const int * which) ; 
00040   virtual void reallyScale(const double * columnScale) ;
00044   virtual int markNonlinear(char * which) const ;
00048   virtual int markNonzero(char * which) const;
00050   
00051   
00053 
00054 
00055   ClpConstraintLinear(); 
00056   
00058   ClpConstraintLinear(int row, int numberCoefficients, int numberColumns,
00059                       const int * column, const double * element);
00060   
00063   ClpConstraintLinear(const ClpConstraintLinear & rhs);
00064 
00066   ClpConstraintLinear & operator=(const ClpConstraintLinear& rhs);
00067   
00069   virtual ~ClpConstraintLinear ();
00070 
00072   virtual ClpConstraint * clone() const;
00074 
00075 
00076 
00077   virtual int numberCoefficients() const;
00079   inline int numberColumns() const
00080   {return numberColumns_;}
00082   inline const int * column() const
00083   { return column_;}
00085   inline const double * coefficient() const
00086   { return coefficient_;}
00088 
00089   //---------------------------------------------------------------------------
00090   
00091 private:
00094   int * column_;
00096   double * coefficient_;
00098   int numberColumns_;
00100   int numberCoefficients_;
00102 };
00103 
00104 #endif

Generated on Sun Nov 14 14:06:31 2010 for Coin-All by  doxygen 1.4.7