ClpConstraintLinear.hpp
Go to the documentation of this file.
1 /* $Id: ClpConstraintLinear.hpp 1525 2010-02-26 17:27:59Z mjs $ */
2 // Copyright (C) 2007, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 #ifndef ClpConstraintLinear_H
5 #define ClpConstraintLinear_H
6 
7 #include "ClpConstraint.hpp"
8 
9 //#############################################################################
10 
16 
17 public:
18 
20 
21 
22 
29  virtual int gradient(const ClpSimplex * model,
30  const double * solution,
31  double * gradient,
32  double & functionValue ,
33  double & offset,
34  bool useScaling = false,
35  bool refresh = true) const ;
37  virtual void resize(int newNumberColumns) ;
39  virtual void deleteSome(int numberToDelete, const int * which) ;
41  virtual void reallyScale(const double * columnScale) ;
45  virtual int markNonlinear(char * which) const ;
49  virtual int markNonzero(char * which) const;
51 
52 
54 
55 
57 
60  const int * column, const double * element);
61 
65 
68 
70  virtual ~ClpConstraintLinear ();
71 
73  virtual ClpConstraint * clone() const;
75 
76 
77 
78  virtual int numberCoefficients() const;
80  inline int numberColumns() const {
81  return numberColumns_;
82  }
84  inline const int * column() const {
85  return column_;
86  }
88  inline const double * coefficient() const {
89  return coefficient_;
90  }
92 
93  //---------------------------------------------------------------------------
94 
95 private:
98  int * column_;
100  double * coefficient_;
106 };
107 
108 #endif