CMS 3D CMS Logo

HDQMfitUtilities.h
Go to the documentation of this file.
1 #ifndef DQMServices_HDQMfitUtilities_H
2 #define DQMServices_HDQMfitUtilities_H
3 
6 #include "TF1.h"
7 #include "TH1.h"
8 #include "TMath.h"
9 #include <cstring>
10 #include <iostream>
11 #include <sstream>
12 #include <string>
13 #include <vector>
14 
22 namespace HDQMUtil {
23  double langaufun(double *x, double *par);
24  int32_t langaupro(double *params, double &maxx, double &FWHM);
25  double Gauss(double *x, double *par);
26 } // namespace HDQMUtil
27 
29 public:
32 
33  void init();
34  double doLanGaussFit(MonitorElement *ME) { return doLanGaussFit(ME->getTH1F()); }
35  double doLanGaussFit(TH1F *);
36 
37  double doGaussFit(MonitorElement *ME) { return doGaussFit(ME->getTH1F()); }
38  double doGaussFit(TH1F *);
39 
40  double getLanGaussPar(std::string s);
41  double getLanGaussParErr(std::string s);
42  double getLanGaussConv(std::string s);
43 
44  double getGaussPar(std::string s);
45  double getGaussParErr(std::string s);
46 
47  double getFitChi() { return chi2GausS; }
48  int getFitnDof() { return nDofGausS; }
49 
50 private:
51  double pLanGausS[4], epLanGausS[4];
52  double pGausS[3], epGausS[3];
53  double pLanConv[2];
54  double chi2GausS;
55  int32_t nDofGausS;
56  TF1 *langausFit;
57  TF1 *gausFit;
58 };
59 
60 #endif // DQM_SiStripHistoricInfoClient_HDQMfitUtilities_H
int32_t langaupro(double *params, double &maxx, double &FWHM)
TH1F * getTH1F() const
int init
Definition: HydjetWrapper.h:67
double doGaussFit(MonitorElement *ME)
Definition: ME.h:11
double Gauss(double *x, double *par)
double langaufun(double *x, double *par)
double doLanGaussFit(MonitorElement *ME)