ClpConstraint Class Reference

Constraint Abstract Base Class. More...

#include <ClpConstraint.hpp>

Inheritance diagram for ClpConstraint:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Stuff



virtual int gradient (const ClpSimplex *model, const double *solution, double *gradient, double &functionValue, double &offset, bool useScaling=false, bool refresh=true) const =0
 Fills gradient.
virtual double functionValue (const ClpSimplex *model, const double *solution, bool useScaling=false, bool refresh=true) const
 Constraint function value.
virtual void resize (int newNumberColumns)=0
 Resize constraint.
virtual void deleteSome (int numberToDelete, const int *which)=0
 Delete columns in constraint.
virtual void reallyScale (const double *columnScale)=0
 Scale constraint.
virtual int markNonlinear (char *which) const =0
 Given a zeroed array sets nonlinear columns to 1.
virtual int markNonzero (char *which) const =0
 Given a zeroed array sets possible nonzero coefficients to 1.
Constructors and destructors



 ClpConstraint ()
 Default Constructor.
 ClpConstraint (const ClpConstraint &)
 Copy constructor.
ClpConstraintoperator= (const ClpConstraint &rhs)
 Assignment operator.
virtual ~ClpConstraint ()
 Destructor.
virtual ClpConstraintclone () const =0
 Clone.
Other



int type ()
 Returns type, 0 linear, 1 nonlinear.
int rowNumber () const
 Row number (-1 is objective).
virtual int numberCoefficients () const =0
 Number of possible coefficients in gradient.
double functionValue () const
 Stored constraint function value.
double offset () const
 Constraint offset.
virtual void newXValues ()
 Say we have new primal solution - so may need to recompute.

Protected Attributes

Protected member data



double * lastGradient_
 Gradient at last evaluation.
double functionValue_
 Value of non-linear part of constraint.
double offset_
 Value of offset for constraint.
int type_
 Type of constraint - linear is 1.
int rowNumber_
 Row number (-1 is objective).

Detailed Description

Constraint Abstract Base Class.

Abstract Base Class for describing a constraint or objective function

Definition at line 16 of file ClpConstraint.hpp.


Constructor & Destructor Documentation

ClpConstraint::ClpConstraint (  ) 

Default Constructor.

ClpConstraint::ClpConstraint ( const ClpConstraint  ) 

Copy constructor.

virtual ClpConstraint::~ClpConstraint (  )  [virtual]

Destructor.


Member Function Documentation

virtual int ClpConstraint::gradient ( const ClpSimplex model,
const double *  solution,
double *  gradient,
double &  functionValue,
double &  offset,
bool  useScaling = false,
bool  refresh = true 
) const [pure virtual]

Fills gradient.

If Linear then solution may be NULL, also returns true value of function and offset so we can use x not deltaX in constraint If refresh is false then uses last solution Uses model for scaling Returns non-zero if gradient undefined at current solution

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

virtual double ClpConstraint::functionValue ( const ClpSimplex model,
const double *  solution,
bool  useScaling = false,
bool  refresh = true 
) const [virtual]

Constraint function value.

virtual void ClpConstraint::resize ( int  newNumberColumns  )  [pure virtual]

Resize constraint.

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

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

Delete columns in constraint.

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

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

Scale constraint.

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

virtual int ClpConstraint::markNonlinear ( char *  which  )  const [pure virtual]

Given a zeroed array sets nonlinear columns to 1.

Returns number of nonlinear columns

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

virtual int ClpConstraint::markNonzero ( char *  which  )  const [pure virtual]

Given a zeroed array sets possible nonzero coefficients to 1.

Returns number of nonzeros

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

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

Assignment operator.

Reimplemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

virtual ClpConstraint* ClpConstraint::clone (  )  const [pure virtual]
int ClpConstraint::type (  )  [inline]

Returns type, 0 linear, 1 nonlinear.

Definition at line 80 of file ClpConstraint.hpp.

int ClpConstraint::rowNumber (  )  const [inline]

Row number (-1 is objective).

Definition at line 83 of file ClpConstraint.hpp.

virtual int ClpConstraint::numberCoefficients (  )  const [pure virtual]

Number of possible coefficients in gradient.

Implemented in ClpConstraintAmpl, ClpConstraintLinear, and ClpConstraintQuadratic.

double ClpConstraint::functionValue (  )  const [inline]

Stored constraint function value.

Definition at line 90 of file ClpConstraint.hpp.

double ClpConstraint::offset (  )  const [inline]

Constraint offset.

Definition at line 94 of file ClpConstraint.hpp.

virtual void ClpConstraint::newXValues (  )  [inline, virtual]

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

Reimplemented in ClpConstraintAmpl.

Definition at line 97 of file ClpConstraint.hpp.


Member Data Documentation

double* ClpConstraint::lastGradient_ [mutable, protected]

Gradient at last evaluation.

Definition at line 106 of file ClpConstraint.hpp.

double ClpConstraint::functionValue_ [mutable, protected]

Value of non-linear part of constraint.

Definition at line 108 of file ClpConstraint.hpp.

double ClpConstraint::offset_ [mutable, protected]

Value of offset for constraint.

Definition at line 110 of file ClpConstraint.hpp.

int ClpConstraint::type_ [protected]

Type of constraint - linear is 1.

Definition at line 112 of file ClpConstraint.hpp.

int ClpConstraint::rowNumber_ [protected]

Row number (-1 is objective).

Definition at line 114 of file ClpConstraint.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