CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Utility.h
Go to the documentation of this file.
1 #ifndef DQM_SiStripCommissioningAnalysis_Utility_H
2 #define DQM_SiStripCommissioningAnalysis_Utility_H
3 
5 #include <boost/cstdint.hpp>
6 #include <vector>
7 #include <cmath>
8 
9 namespace sistrip {
10 
11  class LinearFit {
12 
13  public:
14 
15  LinearFit();
16 
17  ~LinearFit() {;}
18 
19  class Params {
20  public:
21  uint16_t n_;
22  float a_;
23  float b_;
24  float erra_;
25  float errb_;
26  Params() :
27  n_(sistrip::invalid_),
28  a_(sistrip::invalid_),
29  b_(sistrip::invalid_),
30  erra_(sistrip::invalid_),
31  errb_(sistrip::invalid_) {;}
32  ~Params() {;}
33  };
34 
35  void add( const float& value_x,
36  const float& value_y );
37 
38  void add( const float& value_x,
39  const float& value_y,
40  const float& error_y );
41 
42  void fit( Params& fit_params );
43 
44  private:
45 
46  std::vector<float> x_;
47  std::vector<float> y_;
48  std::vector<float> e_;
49  float ss_;
50  float sx_;
51  float sy_;
52 
53  };
54 
55  class MeanAndStdDev {
56 
57  public:
58 
59  MeanAndStdDev();
60 
62 
63  class Params {
64  public:
65  float mean_;
66  float rms_;
67  float median_;
68  Params() :
69  mean_(sistrip::invalid_),
70  rms_(sistrip::invalid_),
71  median_(sistrip::invalid_) {;}
72  ~Params() {;}
73  };
74 
75  void add( const float& value,
76  const float& error );
77 
78  void fit( Params& fit_params );
79 
80  private:
81 
82  float s_;
83  float x_;
84  float xx_;
85  std::vector<float> vec_;
86 
87  };
88 
89 }
90 
91 #endif // DQM_SiStripCommissioningAnalysis_Utility_H
std::vector< float > x_
Definition: Utility.h:46
std::vector< float > e_
Definition: Utility.h:48
void add(const float &value_x, const float &value_y)
Definition: Utility.cc:17
std::vector< float > y_
Definition: Utility.h:47
static const uint16_t invalid_
Definition: Constants.h:17
void add(const float &value, const float &error)
Definition: Utility.cc:87
void fit(Params &fit_params)
Definition: Utility.cc:47
void fit(Params &fit_params)
Definition: Utility.cc:104
std::vector< float > vec_
Definition: Utility.h:85