00001 #ifndef MINIMIZER_H
00002 #define MINIMIZER_H
00003
00004 #include <sstream>
00005 #include <iomanip>
00006 using namespace std;
00007
00008 #include "../config.h"
00009
00013 class INIParser;
00014
00015 class Minimizer
00016 {
00017 public:
00018 Minimizer(Config *config);
00019 virtual void runMinimizer() = 0;
00020 void runBlocking();
00021
00022 virtual void loadConfiguration(INIParser *settings) {
00023 (void)settings;
00024 }
00025 void blocking(double *values, int nValues, int blockSize, double *result);
00026 double mean(double *values, double nValues);
00027 protected:
00028 Config *config;
00029 int m_rank;
00030 int m_m_nProcesses;
00031 int m_nParticles;
00032 int m_nDimensions;
00033
00034 int m_nSamples;
00035
00036 double *m_allEnergies;
00037 private:
00038 };
00039
00040 #endif // MINIMIZER_H