18#ifndef MINOTAURCONBOUNDMOD_H
19#define MINOTAURCONBOUNDMOD_H
21#include "Modification.h"
27 typedef Engine* EnginePtr;
28 typedef ConBoundMod* ConBoundModPtr;
29 typedef std::vector <ConBoundModPtr> ConBoundModVector;
30 typedef ConBoundModVector::iterator ConBoundModIter;
31 typedef ConBoundModVector::const_iterator ConBoundModConstIter;
67 void write(std::ostream &out)
const;
84 typedef ConBoundMod2* ConBoundMod2Ptr;
85 typedef const ConBoundMod2* ConstConBoundMod2Ptr;
86 typedef std::vector < ConBoundMod2Ptr > ConBoundMod2Vector;
87 typedef ConBoundMod2Vector::iterator ConBoundMod2Iter;
88 typedef ConBoundMod2Vector::const_iterator ConBoundMod2ConstIter;
123 void write(std::ostream &)
const {};
144 typedef ConMod* ConModPtr;
145 typedef const ConMod* ConstConModPtr;
146 typedef std::vector < ConModPtr > ConModVector;
147 typedef ConModVector::iterator ConModIter;
148 typedef ConModVector::const_iterator ConModConstIter;
181 void write(std::ostream &)
const {};
Declare abstract base class NonlinearFunction.
Modification of a both bounds on a constraint.
Definition: ConBoundMod.h:91
ModificationPtr toRel(ProblemPtr, RelaxationPtr) const
Covert a modification for a problem to one for its relaxation.
Definition: ConBoundMod.h:116
~ConBoundMod2()
Destroy.
Definition: ConBoundMod.cpp:129
void write(std::ostream &) const
Write it to 'out'.
Definition: ConBoundMod.h:123
double getNewUb() const
Get new value of the bound.
Definition: ConBoundMod.cpp:159
double getNewLb() const
Get new value of the bound.
Definition: ConBoundMod.cpp:153
ConstraintPtr getCon() const
Get the constraint whose bound is changed.
Definition: ConBoundMod.cpp:147
void undoToProblem(ProblemPtr problem)
Restore the modification for a problem.
Definition: ConBoundMod.cpp:183
void applyToProblem(ProblemPtr problem)
Apply it to the problem.
Definition: ConBoundMod.cpp:165
ModificationPtr fromRel(RelaxationPtr, ProblemPtr) const
Covert a modification for a relaxation to one for its original problem.
Definition: ConBoundMod.h:103
ConBoundMod2(ConstraintPtr con, double new_lb, double new_ub)
Construct.
Definition: ConBoundMod.cpp:119
Modification of a single bound on a constraint.
Definition: ConBoundMod.h:35
double getNewVal() const
Get new value of the bound.
Definition: ConBoundMod.cpp:74
void applyToProblem(ProblemPtr problem)
Apply it to the problem.
Definition: ConBoundMod.cpp:80
BoundType getLU() const
Get the type of bound that is changed: lower or upper.
Definition: ConBoundMod.cpp:68
~ConBoundMod()
Destroy.
Definition: ConBoundMod.cpp:46
void undoToProblem(ProblemPtr problem)
TO DO.
Definition: ConBoundMod.cpp:96
ModificationPtr toRel(ProblemPtr, RelaxationPtr) const
Covert a modification for a problem to one for its relaxation.
Definition: ConBoundMod.h:48
ModificationPtr fromRel(RelaxationPtr, ProblemPtr) const
Covert a modification for a relaxation to one for its original problem.
Definition: ConBoundMod.h:44
void write(std::ostream &out) const
Write it to 'out'.
Definition: ConBoundMod.cpp:102
ConstraintPtr getCon() const
Get the constraint whose bound is changed.
Definition: ConBoundMod.cpp:62
ConBoundMod(ConstraintPtr con, BoundType lu, double new_val)
Construct.
Definition: ConBoundMod.cpp:28
Modification of a both bounds on a constraint.
Definition: ConBoundMod.h:151
ModificationPtr toRel(ProblemPtr, RelaxationPtr) const
Covert a modification for a problem to one for its relaxation.
Definition: ConBoundMod.h:174
ConMod(ConstraintPtr con, NonlinearFunctionPtr new_nlf)
Construct.
Definition: ConBoundMod.cpp:191
void write(std::ostream &) const
Write it to 'out'.
Definition: ConBoundMod.h:181
void applyToProblem(ProblemPtr problem)
Apply it to the problem.
Definition: ConBoundMod.cpp:216
ConstraintPtr getCon() const
Get the constraint whose bound is changed.
Definition: ConBoundMod.cpp:204
ModificationPtr fromRel(RelaxationPtr, ProblemPtr) const
Covert a modification for a relaxation to one for its original problem.
Definition: ConBoundMod.h:163
NonlinearFunctionPtr getNewNlf() const
Get new nonlinearFunction.
Definition: ConBoundMod.cpp:210
void undoToProblem(ProblemPtr problem)
TO DO.
Definition: ConBoundMod.cpp:232
~ConMod()
Destroy.
Definition: ConBoundMod.cpp:199
The Constraint class is used to manage a constraint.
Definition: Constraint.h:61
Definition: Modification.h:29
Base class for nonlinear functions.
Definition: NonlinearFunction.h:31
Definition: Relaxation.h:53
Definition: ActiveNodeStore.h:20
BoundType
Different types of variable-bounds.
Definition: Types.h:131