specific_functions.h
Go to the documentation of this file.
1 
40 #ifndef HIGH_PRECISION_PSO_FUNCTION_SPECIFIC_FUNCTIONS_H_
41 #define HIGH_PRECISION_PSO_FUNCTION_SPECIFIC_FUNCTIONS_H_
42 
43 #include "function/function.h"
45 
46 namespace highprecisionpso {
47 
52 public:
58  ConstantSpecificFunction(ConstantEvaluation* constant_evaluation);
66  std::vector<mpf_t*> Eval(const std::vector<mpf_t*> & pos);
67  std::string GetName();
68 
69 private:
70  ConstantEvaluation* constant_evaluation_;
71 };
72 
77 public:
85  std::vector<mpf_t*> Eval(const std::vector<mpf_t*> & pos);
86  std::string GetName();
87 };
88 
93 public:
100  OperatedSpecificFunction(Operation* operation, SpecificFunction* specific_function);
108  std::vector<mpf_t*> Eval(const std::vector<mpf_t*> & pos);
109  std::string GetName();
110 
111 private:
112  Operation* operation_;
113  SpecificFunction* specific_function_;
114 };
115 
120 public:
136  std::vector<mpf_t*> Eval(const std::vector<mpf_t*> & pos);
137  std::string GetName();
138 
139 private:
140  PairReduceOperation* operation_;
141  SpecificFunction* operator1_;
142  SpecificFunction* operator2_;
143 };
144 
145 } // namespace highprecisionpso
146 
147 #endif /* HIGH_PRECISION_PSO_FUNCTION_SPECIFIC_FUNCTIONS_H_ */
std::vector< mpf_t * > Eval(const std::vector< mpf_t * > &pos)
Returns the evaluation of the current constant specific function.
This file contains abstract classes for function generation.
This class implements a specific function with an evaluation function that clones the input...
Definition: specific_functions.h:76
This class implements a specific function, which combines two specific functions with an operation...
Definition: specific_functions.h:119
This class is an abstract class. It supplies an interface for operations on vectors.
Definition: function.h:191
This class is an abstract class. It supplies the interface for generating a constant value...
Definition: general_objects.h:532
std::string GetName()
Returns a string representation of this object.
This class is an abstract class. It supplies the interface to operate on single mpf_t values...
Definition: general_objects.h:683
This class implements a specific function, which combines an operation with a specific function...
Definition: specific_functions.h:92
This class implements a specific function with an evaluation function that always evaluates to a vect...
Definition: specific_functions.h:51
ConstantSpecificFunction(ConstantEvaluation *constant_evaluation)
The constructor, where the constant can be specified.
This class is an abstract class. It supplies the interface for reducing two mpf_t values to a single ...
Definition: general_objects.h:403
This file contains various general objects which can be used by or contained in other objects...
base namespace for this project.
Definition: absorption.h:45