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

- File List
- File Members

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

Go to the documentation of this file.

    00001 /* $Id: ClpLinearObjective.hpp 1458 2009-11-05 12:34:07Z forrest $ */
    00002 // Copyright (C) 2003, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004 #ifndef ClpLinearObjective_H
    00005 #define ClpLinearObjective_H
    00006
    00007 #include "ClpObjective.hpp"
    00008
    00009 //#############################################################################
    00010
    00015 class ClpLinearObjective : public ClpObjective {
    00016
    00017 public:
    00018
    00020
    00021
    00028   virtual double * gradient(const ClpSimplex * model,
    00029                             const double * solution, double & offset,bool refresh,
    00030                             int includeLinear=2);
    00033   virtual double reducedGradient(ClpSimplex * model, double * region,
    00034                                  bool useFeasibleCosts);
    00041   virtual double stepLength(ClpSimplex * model,
    00042                             const double * solution,
    00043                             const double * change,
    00044                             double maximumTheta,
    00045                             double & currentObj,
    00046                             double & predictedObj,
    00047                             double & thetaObj);
    00049   virtual double objectiveValue(const ClpSimplex * model, const double * solution) const ;
    00051   virtual void resize(int newNumberColumns) ;
    00053   virtual void deleteSome(int numberToDelete, const int * which) ;
    00055   virtual void reallyScale(const double * columnScale) ;
    00056
    00058
    00059
    00061
    00062
    00063   ClpLinearObjective();
    00064
    00066   ClpLinearObjective(const double * objective, int numberColumns);
    00067
    00069   ClpLinearObjective(const ClpLinearObjective &);
    00073   ClpLinearObjective (const ClpLinearObjective &rhs,int numberColumns,
    00074                                       const int * whichColumns) ;
    00075
    00077   ClpLinearObjective & operator=(const ClpLinearObjective& rhs);
    00078
    00080   virtual ~ClpLinearObjective ();
    00081
    00083   virtual ClpObjective * clone() const;
    00087   virtual ClpObjective * subsetClone (int numberColumns,
    00088                                       const int * whichColumns) const;
    00089
    00091
    00092   //---------------------------------------------------------------------------
    00093
    00094 private:
    00097   double * objective_;
    00099   int numberColumns_;
    00101 };
    00102
    00103 #endif