20 #ifndef IPO_OBJECTIVE_HPP
21 #define IPO_OBJECTIVE_HPP
56 std::string
const& name );
66 std::string
const& name );
74 char const*
const name = 0 );
84 char const*
const name = 0 );
92 char const*
const name = 0 );
122 void setName( std::string
const& name );
127 void setName(
char*
const name );
167 virtual void summary( std::ostream& ostream = std::cout,
168 std::string
const& prefix =
"" )
const override;
201 double value() const noexcept;
void addArray(Array &array)
Add an Array.
Shared pointer to ipo::Function object.
Array variables
The variables used by function.
double constexpr infinity
Infinity: use for unbounded variables.
ModelBase & model
A Model to attach this to.
Array & getVariables()
Get variables used by Objective function.
void setName(std::string const &name)
Set name of Objective.
std::string name
A name for this objective.
std::shared_ptr< Data > data
The objective data.
Abstract base class for Objective and Constraint.
Abstract base class for model.
Class for an objective function.
double value() const noexcept
Value of the objective function at the current value of the variables.
void removeArray(Array &array)
Remove an Array.
Data(detail::ModelBase &model)
Constructor.
std::string getName() const
Get name of variable.
This class computes a function at a vector.
This class represents a variable.
void addVariable(Variable &variable)
Add a Variable.
void removeVariable(Variable &variable)
Remove (first, and usually only occurrence of) a Variable.
double lowerBound
The lower bound of the variable.
This class represents an array of Variable objects.
Objective & operator=(Objective const &objective)
Assignment operator.
double upperBound
The upper bound of the variable.
double constexpr minusInfinity
Negative infinity: use for unbounded variables.
Objective(detail::ModelBase &model, detail::SharedFunctionPtr function, std::string const &name)
Use this constructor to construct from a SharedFunctionPtr object.
Abstract base class for Variable and Array;.
Struct to contain Constraint data.
virtual void summary(std::ostream &ostream=std::cout, std::string const &prefix="") const override
Create a summary of this function.
This namespace holds all the interior-point optimisation classes.