CMS 3D CMS Logo

MinL3Algorithm.h

Go to the documentation of this file.
00001 #ifndef MinL3Algorithm_H
00002 #define MinL3Algorithm_H
00003 
00017 #include <vector>
00018 #include <iostream>
00019 
00020 using namespace std;
00021 
00022 
00023 class MinL3Algorithm
00024 {
00025 public:
00028   MinL3Algorithm(float kweight_ = 0., int squareMode_ = 5, int mineta_ = 1, int maxeta_ = 85, int minphi_ = 1, int maxphi_ = 20);
00029 
00031   ~MinL3Algorithm();
00032 
00036   vector<float> iterate(const vector<vector<float> >& eventMatrix, const vector<int>& VmaxCeta, const vector<int>& VmaxCphi, const vector<float>& energyVector, const int& nIter, const bool& normalizeFlag = false);
00037 
00038 
00040   void addEvent(const vector<float>& eventSquare, const int& maxCeta, const int& maxCphi, const float& energy);
00041 
00043   vector<float> recalibrateEvent(const vector<float>& eventSquare, const int& maxCeta, const int& maxCphi, const vector<float>& recalibrateVector); 
00044 
00046   vector<float> getSolution(bool resetsolution=true);
00047 
00049   void resetSolution(); 
00050 
00052   int indexSqr2Reg(const int& sqrIndex, const int& maxCeta, const int& maxCphi);
00053 
00054 
00055 private:
00056 
00057   float kweight;
00058   int squareMode;
00059   int mineta, maxeta, minphi, maxphi;
00060   int countEvents;
00061   int Nchannels, Nxtals;
00062   vector<float> wsum;
00063   vector<float> Ewsum;
00064 
00065 };
00066 
00067 #endif // MinL3Algorithm_H

Generated on Tue Jun 9 17:25:41 2009 for CMSSW by  doxygen 1.5.4