]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSstatistics2.h
New ITS code for new structure and simulations.
[u/mrichter/AliRoot.git] / ITS / AliITSstatistics2.h
CommitLineData
b0f5e3fc 1#ifndef ALIITSSTATISTICS2_H
2#define ALIITSSTATISTICS2_H
3//////////////////////////////////////////////////////////////////////////
4// Alice ITS first detector alignment program. //
5// //
6// version: 0.0.0 Draft. //
7// Date: April 18 1999 //
8// By: Bjorn S. Nilsen //
9// //
10//////////////////////////////////////////////////////////////////////////
11#include "TObject.h"
12
13class AliITSstatistics2 : public TObject {
14//
15
16 public:
17 AliITSstatistics2();
18 AliITSstatistics2(Int_t order);
19 AliITSstatistics2(AliITSstatistics2 &source); // copy constructor
20 AliITSstatistics2& operator=(AliITSstatistics2 &source); // operator=
21 virtual ~AliITSstatistics2();
22 void Reset();
23 void AddValue(Double_t y,Double_t x,Double_t w);
24 void AddValue(Double_t y,Double_t x){AddValue(y,x,1.0);} // default weight
25 void AddValue(Float_t y,Float_t x,Float_t w){
26 AddValue((Double_t)y,(Double_t)x,(Double_t)w);} // Floating point version
27 void AddValue(Float_t y,Float_t x){AddValue(y,x,1.0);}// default weight F.
28 Double_t GetXNth (Int_t order);
29 Double_t GetYNth (Int_t order);
30 Double_t GetYXNth(Int_t order);
31 Double_t GetMeanY() {
32 // return mean y
33 return GetYNth(1);
34 };
35 Double_t GetMeanX() {
36 // return mean x
37 return GetXNth(1);
38 };
39 Double_t GetMeanYX() {
40 // return mean Y*X
41 return GetYXNth(1);
42 };
43 Int_t GetN(){
44 // retrun the number of entries
45 return fN;
46 };
47 Int_t GetOrder(){
48 // return the maximum moment order
49 return fOrder;
50 };
51 Double_t GetXN (Int_t order){
52 // returns x^n
53 return fx[order-1];
54 };
55 Double_t GetYN (Int_t order){
56 // returns y^n
57 return fy[order-1];
58 };
59 Double_t GetYXN(Int_t order){
60 // returns (yx)^n
61 return fyx[order-1];
62 };
63 Double_t GetWN (Int_t order){
64 // returns w^n (weight)
65 return fw[order-1];
66 };
67 Double_t GetRMSY();
68 Double_t GetRMSX();
69 Double_t GetRMSYX();
70 Double_t GetErrorMeanY();
71 Double_t GetErrorMeanX();
72 Double_t GetErrorMeanYX();
73 Double_t GetErrorRMSY();
74 Double_t GetErrorRMSX();
75 Double_t GetErrorRMSYX();
76 Double_t FitToLine(Double_t &a,Double_t &b);
77
78 private:
79 Double_t *fx; // array of sums of x^n
80 Double_t *fyx; // array of sums of (xy)^n
81 Double_t *fy; // array of sums of y^n
82 Double_t *fw; // array of sums of w^n (weights)
83 Int_t fN; // number of enetries
84 Int_t fOrder; // maximum moment of distributions (^n)
85
86
87 ClassDef(AliITSstatistics2,1) //
88};
89#endif