6 #ifndef ClpLinearObjective_H
7 #define ClpLinearObjective_H
29 const double * solution,
double & offset,
bool refresh,
30 int includeLinear = 2);
34 bool useFeasibleCosts);
42 const double * solution,
43 const double * change,
46 double & predictedObj,
51 virtual void resize(
int newNumberColumns) ;
53 virtual void deleteSome(
int numberToDelete,
const int * which) ;
55 virtual void reallyScale(
const double * columnScale) ;
74 const int * whichColumns) ;
88 const int * whichColumns)
const;
virtual ClpObjective * subsetClone(int numberColumns, const int *whichColumns) const
Subset clone.
virtual double reducedGradient(ClpSimplex *model, double *region, bool useFeasibleCosts)
Returns reduced gradient.Returns an offset (to be added to current one).
Objective Abstract Base Class.
int numberColumns_
number of columns
virtual void deleteSome(int numberToDelete, const int *which)
Delete columns in objective.
virtual ClpObjective * clone() const
Clone.
virtual double * gradient(const ClpSimplex *model, const double *solution, double &offset, bool refresh, int includeLinear=2)
Returns objective coefficients.
ClpLinearObjective()
Default Constructor.
virtual double objectiveValue(const ClpSimplex *model, const double *solution) const
Return objective value (without any ClpModel offset) (model may be NULL)
This solves LPs using the simplex method.
ClpLinearObjective & operator=(const ClpLinearObjective &rhs)
Assignment operator.
virtual void reallyScale(const double *columnScale)
Scale objective.
virtual double stepLength(ClpSimplex *model, const double *solution, const double *change, double maximumTheta, double ¤tObj, double &predictedObj, double &thetaObj)
Returns step length which gives minimum of objective for solution + theta * change vector up to maxim...
virtual void resize(int newNumberColumns)
Resize objective.
double * objective_
number of columns
virtual ~ClpLinearObjective()
Destructor.