minimizer/minimizer.h
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     // monte carlo settings
00034     int m_nSamples;
00035     // energies to store in block files
00036     double *m_allEnergies;
00037 private:
00038 };
00039 
00040 #endif // MINIMIZER_H
 All Classes Functions