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

- File List
- File Members

# /home/coin/SVN-release/Alps-1.2.1/Clp/src/ClpLinearObjective.hpp

Go to the documentation of this file.

    00001 /* $Id: ClpLinearObjective.hpp 1602 2010-09-07 22:26:41Z lou $ */
    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
    00026      virtual double * gradient(const ClpSimplex * model,
    00027                                const double * solution, double & offset, bool refresh,
    00028                                int includeLinear = 2);
    00031      virtual double reducedGradient(ClpSimplex * model, double * region,
    00032                                     bool useFeasibleCosts);
    00039      virtual double stepLength(ClpSimplex * model,
    00040                                const double * solution,
    00041                                const double * change,
    00042                                double maximumTheta,
    00043                                double & currentObj,
    00044                                double & predictedObj,
    00045                                double & thetaObj);
    00047      virtual double objectiveValue(const ClpSimplex * model, const double * solution) const ;
    00049      virtual void resize(int newNumberColumns) ;
    00051      virtual void deleteSome(int numberToDelete, const int * which) ;
    00053      virtual void reallyScale(const double * columnScale) ;
    00054
    00056
    00057
    00059
    00060
    00061      ClpLinearObjective();
    00062
    00064      ClpLinearObjective(const double * objective, int numberColumns);
    00065
    00067      ClpLinearObjective(const ClpLinearObjective &);
    00071      ClpLinearObjective (const ClpLinearObjective &rhs, int numberColumns,
    00072                          const int * whichColumns) ;
    00073
    00075      ClpLinearObjective & operator=(const ClpLinearObjective& rhs);
    00076
    00078      virtual ~ClpLinearObjective ();
    00079
    00081      virtual ClpObjective * clone() const;
    00085      virtual ClpObjective * subsetClone (int numberColumns,
    00086                                          const int * whichColumns) const;
    00087
    00089
    00090      //---------------------------------------------------------------------------
    00091
    00092 private:
    00095      double * objective_;
    00097      int numberColumns_;
    00099 };
    00100
    00101 #endif