specific_statistical_evaluations.h
Go to the documentation of this file.
1 
40 #ifndef HIGH_PRECISION_PSO_STATISTICS_SPECIFIC_STATISTICAL_EVALUATIONS_H_
41 #define HIGH_PRECISION_PSO_STATISTICS_SPECIFIC_STATISTICAL_EVALUATIONS_H_
42 
43 #include <gmp.h>
44 #include <string>
45 #include <vector>
46 
48 
49 namespace highprecisionpso {
50 
55 public:
65  virtual std::vector<std::vector<mpf_t*> > Evaluate() = 0;
71  virtual std::string GetName() = 0;
72 };
73 
78 public:
91  std::vector<std::vector<mpf_t*> > Evaluate();
92  std::string GetName();
93 
94 private:
95  Operation* operation_;
96  SpecificStatisticalEvaluation* specific_evaluation_;
97 };
98 
99 
104 public:
118  std::vector<std::vector<mpf_t*> > Evaluate();
119  std::string GetName();
120 
121 private:
122  PairReduceOperation* operation_;
123  SpecificStatisticalEvaluation* operator1_;
124  SpecificStatisticalEvaluation* operator2_;
125 };
126 
131 public:
137  std::vector<std::vector<mpf_t*> > Evaluate();
138  std::string GetName();
139 };
140 
145 public:
151  std::vector<std::vector<mpf_t*> > Evaluate();
152  std::string GetName();
153 };
154 
159 public:
165  std::vector<std::vector<mpf_t*> > Evaluate();
166  std::string GetName();
167 };
168 
173 public:
179  std::vector<std::vector<mpf_t*> > Evaluate();
180  std::string GetName();
181 };
182 
189 public:
204  std::vector<std::vector<mpf_t*> > Evaluate();
205  std::string GetName();
206 
207 private:
208  ConstantEvaluation* constant_evaluation_;
209 };
210 
215 public:
221  std::vector<std::vector<mpf_t*> > Evaluate();
222  std::string GetName();
223 };
224 
225 
226 /************************ STATISTICAL REDUCE OPERATIONS *****************************/
227 
232 public:
244  virtual std::vector<mpf_t*> Evaluate(const std::vector<std::vector<mpf_t*> > & data) = 0;
250  virtual std::string GetName() = 0;
251 };
252 
259 public:
266  std::vector<mpf_t*> Evaluate(const std::vector<std::vector<mpf_t*> > & vec) = 0;
267  std::string GetName() = 0;
268 protected:
273 };
274 
279 public:
285  ComposedParticleReduceOperation(VectorReduceOperation* vector_reduce_operation);
300  std::vector<mpf_t*> Evaluate(const std::vector<std::vector<mpf_t*> > & data);
301  std::string GetName();
302 };
303 
308 public:
330  std::vector<mpf_t*> Evaluate(const std::vector<std::vector<mpf_t*> > & data);
331  std::string GetName();
332 };
333 
334 } // namespace highprecisionpso
335 
336 #endif /* HIGH_PRECISION_PSO_STATISTICS_SPECIFIC_STATISTICAL_EVALUATIONS_H_ */
virtual ~StatisticReduceOperation()
Definition: specific_statistical_evaluations.h:236
This class implements a reduce operation, which reduces the values of all dimensions to a single valu...
Definition: specific_statistical_evaluations.h:307
virtual ~SpecificStatisticalEvaluation()
Definition: specific_statistical_evaluations.h:59
virtual std::string GetName()=0
Returns a string representation of this object.
This class is an abstract class. It supplies the interface for generating a constant value...
Definition: general_objects.h:532
This class is an abstract class. It supplies the interface to reduce specific statistical evaluations...
Definition: specific_statistical_evaluations.h:231
This class implements a specific statistical evaluation, which always evaluates to the same value...
Definition: specific_statistical_evaluations.h:188
virtual std::vector< std::vector< mpf_t * > > Evaluate()=0
Performs some statistical evaluations.
This class implements a specific statistical evaluation, which supplies the global attractor position...
Definition: specific_statistical_evaluations.h:172
This an abstract class. It supplies the interface for reducing a vector of mpf_t values to a single v...
Definition: general_objects.h:153
This class is an abstract class. Additionally to the statistic reduce operation it stores a vector re...
Definition: specific_statistical_evaluations.h:258
This class implements a specific statistical evaluation, which combines two specific statistical eval...
Definition: specific_statistical_evaluations.h:103
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 reduce operation, which reduces the values of all particles to a single value...
Definition: specific_statistical_evaluations.h:278
This class implements a specific statistical evaluation, which operates on the values of another spec...
Definition: specific_statistical_evaluations.h:77
This class implements a specific statistical evaluation, which supplies the velocities of the particl...
Definition: specific_statistical_evaluations.h:144
This class implements a specific statistical evaluation, which supplies the positions of the particle...
Definition: specific_statistical_evaluations.h:130
VectorReduceOperation * vector_reduce_operation
The stored vector reduce operation.
Definition: specific_statistical_evaluations.h:272
This class is an abstract class. It supplies the interface for intermediate statistical evaluations...
Definition: specific_statistical_evaluations.h:54
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
This class implements a specific statistical evaluation, which supplies the number of delta updates i...
Definition: specific_statistical_evaluations.h:214
This class implements a specific statistical evaluation, which supplies the local attractor positions...
Definition: specific_statistical_evaluations.h:158