OP  0.1
OP is a optimization solver plugin package
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | List of all members
op::Functional Class Reference

Abstracted Objective Functional class. More...

#include <op.hpp>

Public Types

using ResultType = double
 
using SensitivityType = std::vector< double >
 
using EvalObjectiveFn = std::function< ResultType(const std::vector< double > &)>
 
using EvalObjectiveGradFn = std::function< SensitivityType(const std::vector< double > &)>
 

Public Member Functions

 Functional (EvalObjectiveFn obj, EvalObjectiveGradFn grad, double lb=default_min, double ub=default_max)
 Objective container class. More...
 
ResultType Eval (const std::vector< double > &v)
 Return the objective evaluation. More...
 
SensitivityType EvalGradient (const std::vector< double > &v)
 return the objective gradient evaluation More...
 

Public Attributes

double lower_bound
 Lower bounds for this optimization functional.
 
double upper_bound
 Upper bounds for this optimization functional.
 

Static Public Attributes

static constexpr double default_min = -std::numeric_limits<double>::max()
 
static constexpr double default_max = std::numeric_limits<double>::max()
 

Protected Attributes

EvalObjectiveFn obj_
 
EvalObjectiveGradFn grad_
 

Detailed Description

Abstracted Objective Functional class.

Definition at line 118 of file op.hpp.

Constructor & Destructor Documentation

op::Functional::Functional ( EvalObjectiveFn  obj,
EvalObjectiveGradFn  grad,
double  lb = default_min,
double  ub = default_max 
)
inline

Objective container class.

Parameters
objA simple function that calculates the objective
gradA simple function that calculates the sensitivity

Definition at line 134 of file op.hpp.

Member Function Documentation

ResultType op::Functional::Eval ( const std::vector< double > &  v)
inline

Return the objective evaluation.

Parameters
[in]vinput optimization vector to evaluate

Definition at line 144 of file op.hpp.

SensitivityType op::Functional::EvalGradient ( const std::vector< double > &  v)
inline

return the objective gradient evaluation

Parameters
[in]vinput optimization vector to evaluate

Definition at line 151 of file op.hpp.


The documentation for this class was generated from the following file: