|
void | initRelax (RelaxationPtr rel, DoubleVector &tmpX, DoubleVector &grad) |
| Creates initial relaxations
|
|
void | updateRelax (RelaxationPtr rel, DoubleVector &tmpX, DoubleVector &grad, ModVector &mods) |
| Update the current relaxation based on current variable bounds.
|
|
bool | isFeasible (const double *x) |
|
double | getViol (const std::vector< double > &x) |
|
void | addSecant (RelaxationPtr rel, ConstVariablePtr iv, ConstVariablePtr ov, FunctionPtr fn, DoubleVector &tmpX, bool init, ModVector &mods) |
|
void | addLin (RelaxationPtr rel, ConstVariablePtr iv, ConstVariablePtr ov, FunctionPtr fn, DoubleVector &tmpX, DoubleVector &grad, bool init, ModVector &mods) |
|
ConstraintPtr | getOriginalCon () const |
|
ConstraintPtr | getSecantCon () const |
|
ConstVariablePtr | getROutVar () const |
|
ConstVariablePtr | getRInputVar () const |
|
ConstraintIterator | linConsBegin () |
|
ConstraintIterator | linConsEnd () |
|
char | getSense () |
|
| CxUnivarConstraintData (double eTol, double vTol, ConstraintPtr newcon, ConstVariablePtr ovar, ConstVariablePtr ivar, char sense) |
| Default constructor.
|
|
| ~CxUnivarConstraintData () |
| Destroy.
|
|
◆ iv_
Input variable, i.e., x in y = f(x) This should be a pointer to the ‘original’ variable, look at corresponding bounds in the relaxation to get bounds
◆ ov_
Output variable, i.e., y in y = f(x) This is a pointer to the ‘original’ variable
◆ sense_
char Minotaur::CxUnivarConstraintData::sense_ |
|
protected |
'L' => y <= f(x), so only add secants 'G' -> y >= f(x), so only add linearizations 'E' -> y == f(x), so do both
The documentation for this class was generated from the following files: