Clp  1.17.8
List of all members
ClpLinearObjective Class Reference

Linear Objective Class. More...

#include <ClpLinearObjective.hpp>

+ Inheritance diagram for ClpLinearObjective:
+ Collaboration diagram for ClpLinearObjective:

Public Member Functions

Stuff
virtual double * gradient (const ClpSimplex *model, const double *solution, double &offset, bool refresh, int includeLinear=2)
 Returns objective coefficients. More...
 
virtual double reducedGradient (ClpSimplex *model, double *region, bool useFeasibleCosts)
 Returns reduced gradient.Returns an offset (to be added to current one). More...
 
virtual double stepLength (ClpSimplex *model, const double *solution, const double *change, double maximumTheta, double &currentObj, double &predictedObj, double &thetaObj)
 Returns step length which gives minimum of objective for solution + theta * change vector up to maximum theta. More...
 
virtual double objectiveValue (const ClpSimplex *model, const double *solution) const
 Return objective value (without any ClpModel offset) (model may be NULL) More...
 
virtual void resize (int newNumberColumns)
 Resize objective. More...
 
virtual void deleteSome (int numberToDelete, const int *which)
 Delete columns in objective. More...
 
virtual void reallyScale (const double *columnScale)
 Scale objective. More...
 
Constructors and destructors
 ClpLinearObjective ()
 Default Constructor. More...
 
 ClpLinearObjective (const double *objective, int numberColumns)
 Constructor from objective. More...
 
 ClpLinearObjective (const ClpLinearObjective &)
 Copy constructor. More...
 
 ClpLinearObjective (const ClpLinearObjective &rhs, int numberColumns, const int *whichColumns)
 Subset constructor. More...
 
ClpLinearObjectiveoperator= (const ClpLinearObjective &rhs)
 Assignment operator. More...
 
virtual ~ClpLinearObjective ()
 Destructor. More...
 
virtual ClpObjectiveclone () const
 Clone. More...
 
virtual ClpObjectivesubsetClone (int numberColumns, const int *whichColumns) const
 Subset clone. More...
 
- Public Member Functions inherited from ClpObjective
virtual int markNonlinear (char *which)
 Given a zeroed array sets nonlinear columns to 1. More...
 
virtual void newXValues ()
 Say we have new primal solution - so may need to recompute. More...
 
 ClpObjective ()
 Default Constructor. More...
 
 ClpObjective (const ClpObjective &)
 Copy constructor. More...
 
ClpObjectiveoperator= (const ClpObjective &rhs)
 Assignment operator. More...
 
virtual ~ClpObjective ()
 Destructor. More...
 
int type () const
 Returns type (above 63 is extra information) More...
 
void setType (int value)
 Sets type (above 63 is extra information) More...
 
int activated () const
 Whether activated. More...
 
void setActivated (int value)
 Set whether activated. More...
 
double nonlinearOffset () const
 Objective offset. More...
 

Private Attributes

Private member data

Objective

double * objective_
 
int numberColumns_
 number of columns More...
 

Additional Inherited Members

- Protected Attributes inherited from ClpObjective
double offset_
 Value of non-linear part of objective. More...
 
int type_
 Type of objective - linear is 1. More...
 
int activated_
 Whether activated. More...
 

Detailed Description

Linear Objective Class.

Definition at line 17 of file ClpLinearObjective.hpp.

Constructor & Destructor Documentation

◆ ClpLinearObjective() [1/4]

ClpLinearObjective::ClpLinearObjective ( )

Default Constructor.

◆ ClpLinearObjective() [2/4]

ClpLinearObjective::ClpLinearObjective ( const double *  objective,
int  numberColumns 
)

Constructor from objective.

◆ ClpLinearObjective() [3/4]

ClpLinearObjective::ClpLinearObjective ( const ClpLinearObjective )

Copy constructor.

◆ ClpLinearObjective() [4/4]

ClpLinearObjective::ClpLinearObjective ( const ClpLinearObjective rhs,
int  numberColumns,
const int *  whichColumns 
)

Subset constructor.

Duplicates are allowed and order is as given.

◆ ~ClpLinearObjective()

virtual ClpLinearObjective::~ClpLinearObjective ( )
virtual

Destructor.

Member Function Documentation

◆ gradient()

virtual double* ClpLinearObjective::gradient ( const ClpSimplex model,
const double *  solution,
double &  offset,
bool  refresh,
int  includeLinear = 2 
)
virtual

Returns objective coefficients.

Offset is always set to 0.0. All other parameters unused.

Implements ClpObjective.

◆ reducedGradient()

virtual double ClpLinearObjective::reducedGradient ( ClpSimplex model,
double *  region,
bool  useFeasibleCosts 
)
virtual

Returns reduced gradient.Returns an offset (to be added to current one).

Implements ClpObjective.

◆ stepLength()

virtual double ClpLinearObjective::stepLength ( ClpSimplex model,
const double *  solution,
const double *  change,
double  maximumTheta,
double &  currentObj,
double &  predictedObj,
double &  thetaObj 
)
virtual

Returns step length which gives minimum of objective for solution + theta * change vector up to maximum theta.

arrays are numberColumns+numberRows Also sets current objective, predicted and at maximumTheta

Implements ClpObjective.

◆ objectiveValue()

virtual double ClpLinearObjective::objectiveValue ( const ClpSimplex model,
const double *  solution 
) const
virtual

Return objective value (without any ClpModel offset) (model may be NULL)

Implements ClpObjective.

◆ resize()

virtual void ClpLinearObjective::resize ( int  newNumberColumns)
virtual

Resize objective.

Implements ClpObjective.

◆ deleteSome()

virtual void ClpLinearObjective::deleteSome ( int  numberToDelete,
const int *  which 
)
virtual

Delete columns in objective.

Implements ClpObjective.

◆ reallyScale()

virtual void ClpLinearObjective::reallyScale ( const double *  columnScale)
virtual

Scale objective.

Implements ClpObjective.

◆ operator=()

ClpLinearObjective& ClpLinearObjective::operator= ( const ClpLinearObjective rhs)

Assignment operator.

◆ clone()

virtual ClpObjective* ClpLinearObjective::clone ( ) const
virtual

Clone.

Implements ClpObjective.

◆ subsetClone()

virtual ClpObjective* ClpLinearObjective::subsetClone ( int  numberColumns,
const int *  whichColumns 
) const
virtual

Subset clone.

Duplicates are allowed and order is as given.

Reimplemented from ClpObjective.

Member Data Documentation

◆ objective_

double* ClpLinearObjective::objective_
private

Definition at line 95 of file ClpLinearObjective.hpp.

◆ numberColumns_

int ClpLinearObjective::numberColumns_
private

number of columns

Definition at line 97 of file ClpLinearObjective.hpp.


The documentation for this class was generated from the following file: