Go to the documentation of this file.
9 #ifndef _MP_expression_hpp_
10 #define _MP_expression_hpp_
35 Coef(
int c,
int r,
double v,
int s = 0) :
101 virtual double level()
const = 0;
103 std::vector<Constant> multiplicators,
146 virtual double getValue()
const = 0;
162 left->insertVariables(v);
163 right->insertVariables(v);
virtual ~GenerateFunctor()
Constant operator*(const Constant &a, const Constant &b)
Returns the product of two constants.
Reference counted class for all "constant" types of data.
GenerateFunctor(std::vector< Coef > &coefs)
void insertVariables(std::set< MP_variable * > &v) const
void setMultiplicator(std::vector< Constant > &mults, double m)
Range over which some other constuct is defined.
virtual void insertVariables(std::set< MP_variable * > &v) const =0
std::vector< Coef > & Coefs
ObjectiveGenerateFunctor(std::vector< Coef > &coefs)
Utility for doing reference counted pointers.
Coef(int c, int r, double v, int s=0)
virtual int row_number() const
virtual int row_number() const
Functor to facilitate generation of coefficients.
Constant operator-(const Constant &a, const Constant &b)
Returns the difference of two constants.
virtual void generate(const MP_domain &domain, std::vector< Constant > multiplicators, GenerateFunctor &f, double m) const =0
virtual double getValue() const =0
MP_expression()
default constructor
Functor to facilitate generation of the objective function.
virtual int getColumn() const =0
Constant operator+(const Constant &a, const Constant &b)
Returns the sum of two constants.
Internal representation of a Coefficient in a matrix.
virtual ~MP_expression_base()
Constant sum(const MP_domain &i, const Constant &e)
Returns the sum of two constants.
The base class for all expressions.
void setTerminalExpression(const TerminalExpression *c)
All flopc++ code is contained within the flopc namespace.
Semantic representation of a variable in a Math Program.
Symbolic representation of a linear expression.
MP_expression(MP_expression_base *r)
Constructor for internal use.
virtual double level() const =0
const TerminalExpression * C
std::vector< Constant > multiplicators
Semantic representation of a linear constraint.
The base class for all expressions.
virtual int getStage() const =0
Expression_operator(const MP_expression &e1, const MP_expression &e2)
The base class for all expressions.
void setConstraint(MP_constraint *r)