ClpAmplObjective Class Reference

Ampl Objective Class. More...

#include <ClpAmplObjective.hpp>

Inheritance diagram for ClpAmplObjective:
Inheritance graph
[legend]
Collaboration diagram for ClpAmplObjective:
Collaboration graph
[legend]

List of all members.

Public Member Functions

Stuff



virtual double * gradient (const ClpSimplex *model, const double *solution, double &offset, bool refresh, int includeLinear=2)
 Returns gradient.
virtual double reducedGradient (ClpSimplex *model, double *region, bool useFeasibleCosts)
 Resize objective.
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.
virtual double objectiveValue (const ClpSimplex *model, const double *solution) const
 Return objective value (without any ClpModel offset) (model may be NULL).
virtual void resize (int newNumberColumns)
 Returns gradient.
virtual void deleteSome (int numberToDelete, const int *which)
 Delete columns in objective.
virtual void reallyScale (const double *columnScale)
 Scale objective.
virtual int markNonlinear (char *which)
 Given a zeroed array sets nonlinear columns to 1.
virtual void newXValues ()
 Say we have new primal solution - so may need to recompute.
Constructors and destructors



 ClpAmplObjective ()
 Default Constructor.
 ClpAmplObjective (void *amplInfo)
 Constructor from ampl info.
 ClpAmplObjective (const ClpAmplObjective &rhs)
 Copy constructor .
ClpAmplObjectiveoperator= (const ClpAmplObjective &rhs)
 Assignment operator.
virtual ~ClpAmplObjective ()
 Destructor.
virtual ClpObjectiveclone () const
 Clone.
Gets and sets



double * linearObjective () const
 Linear objective.

Private Attributes

Private member data

Saved offset



double offset_
 Ampl info.
void * amplObjective_
 Ampl info.
double * objective_
 Objective.
double * gradient_
 Gradient.

Detailed Description

Ampl Objective Class.

Definition at line 15 of file ClpAmplObjective.hpp.


Constructor & Destructor Documentation

ClpAmplObjective::ClpAmplObjective (  ) 

Default Constructor.

ClpAmplObjective::ClpAmplObjective ( void *  amplInfo  ) 

Constructor from ampl info.

ClpAmplObjective::ClpAmplObjective ( const ClpAmplObjective rhs  ) 

Copy constructor .

virtual ClpAmplObjective::~ClpAmplObjective (  )  [virtual]

Destructor.


Member Function Documentation

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

Returns gradient.

If Ampl then solution may be NULL, also returns an offset (to be added to current one) If refresh is false then uses last solution Uses model for scaling includeLinear 0 - no, 1 as is, 2 as feasible

Implements ClpObjective.

virtual double ClpAmplObjective::reducedGradient ( ClpSimplex model,
double *  region,
bool  useFeasibleCosts 
) [virtual]

Resize objective.

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

Implements ClpObjective.

virtual double ClpAmplObjective::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.

virtual double ClpAmplObjective::objectiveValue ( const ClpSimplex model,
const double *  solution 
) const [virtual]

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

Implements ClpObjective.

virtual void ClpAmplObjective::resize ( int  newNumberColumns  )  [virtual]

Returns gradient.

If Ampl then solution may be NULL, also returns an offset (to be added to current one) If refresh is false then uses last solution Uses model for scaling includeLinear 0 - no, 1 as is, 2 as feasible

Implements ClpObjective.

virtual void ClpAmplObjective::deleteSome ( int  numberToDelete,
const int *  which 
) [virtual]

Delete columns in objective.

Implements ClpObjective.

virtual void ClpAmplObjective::reallyScale ( const double *  columnScale  )  [virtual]

Scale objective.

Implements ClpObjective.

virtual int ClpAmplObjective::markNonlinear ( char *  which  )  [virtual]

Given a zeroed array sets nonlinear columns to 1.

Returns number of nonlinear columns

Reimplemented from ClpObjective.

virtual void ClpAmplObjective::newXValues (  )  [virtual]

Say we have new primal solution - so may need to recompute.

Reimplemented from ClpObjective.

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

Assignment operator.

Reimplemented from ClpObjective.

virtual ClpObjective* ClpAmplObjective::clone (  )  const [virtual]

Clone.

Implements ClpObjective.

double* ClpAmplObjective::linearObjective (  )  const

Linear objective.


Member Data Documentation

double ClpAmplObjective::offset_ [private]

Ampl info.

Reimplemented from ClpObjective.

Definition at line 99 of file ClpAmplObjective.hpp.

Ampl info.

Definition at line 101 of file ClpAmplObjective.hpp.

double* ClpAmplObjective::objective_ [private]

Objective.

Definition at line 103 of file ClpAmplObjective.hpp.

double* ClpAmplObjective::gradient_ [private]

Gradient.

Definition at line 105 of file ClpAmplObjective.hpp.


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

Generated on 15 Mar 2015 for Coin-All by  doxygen 1.6.1