Clp 1.17.10
Loading...
Searching...
No Matches
ClpConstraintLinear.hpp
Go to the documentation of this file.
1/* $Id$ */
2// Copyright (C) 2007, International Business Machines
3// Corporation and others. All Rights Reserved.
4// This code is licensed under the terms of the Eclipse Public License (EPL).
5
6#ifndef ClpConstraintLinear_H
7#define ClpConstraintLinear_H
8
9#include "ClpConstraint.hpp"
10
11//#############################################################################
12
16
18
19public:
21
22
29 virtual int gradient(const ClpSimplex *model,
30 const double *solution,
31 double *gradient,
32 double &functionValue,
33 double &offset,
34 bool useScaling = false,
35 bool refresh = true) const;
37 virtual void resize(int newNumberColumns);
39 virtual void deleteSome(int numberToDelete, const int *which);
41 virtual void reallyScale(const double *columnScale);
45 virtual int markNonlinear(char *which) const;
49 virtual int markNonzero(char *which) const;
51
53
54
56
59 const int *column, const double *element);
60
64
67
70
72 virtual ClpConstraint *clone() const;
74
76
77 virtual int numberCoefficients() const;
79 inline int numberColumns() const
80 {
81 return numberColumns_;
82 }
83
84 inline const int *column() const
85 {
86 return column_;
87 }
88
89 inline const double *coefficient() const
90 {
91 return coefficient_;
92 }
93
94
95 //---------------------------------------------------------------------------
96
97private:
108};
109
110#endif
111
112/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
113*/
virtual void reallyScale(const double *columnScale)
Scale constraint.
virtual void deleteSome(int numberToDelete, const int *which)
Delete columns in constraint.
virtual int markNonlinear(char *which) const
Given a zeroed array sets nonlinear columns to 1.
ClpConstraintLinear(int row, int numberCoefficients, int numberColumns, const int *column, const double *element)
Constructor from constraint.
const int * column() const
Columns.
const double * coefficient() const
Coefficients.
virtual ClpConstraint * clone() const
Clone.
ClpConstraintLinear(const ClpConstraintLinear &rhs)
Copy constructor .
virtual int markNonzero(char *which) const
Given a zeroed array sets possible nonzero coefficients to 1.
virtual ~ClpConstraintLinear()
Destructor.
ClpConstraintLinear & operator=(const ClpConstraintLinear &rhs)
Assignment operator.
ClpConstraintLinear()
Default Constructor.
double * coefficient_
Coefficients.
virtual int numberCoefficients() const
Number of coefficients.
int numberCoefficients_
Number of coefficients.
virtual int gradient(const ClpSimplex *model, const double *solution, double *gradient, double &functionValue, double &offset, bool useScaling=false, bool refresh=true) const
Fills gradient.
int numberColumns_
Useful to have number of columns about.
virtual void resize(int newNumberColumns)
Resize constraint.
int numberColumns() const
Number of columns in linear constraint.
virtual double functionValue(const ClpSimplex *model, const double *solution, bool useScaling=false, bool refresh=true) const
Constraint function value.
double offset() const
Constraint offset.
ClpConstraint()
Default Constructor.
This solves LPs using the simplex method.