1 | // ESAF : Euso Simulation and Analysis Framework |
---|
2 | // $Id: HmaxByShapeMethod.hh 2643 2006-03-30 14:55:34Z naumov $ |
---|
3 | // Dmitry V. Naumov created Jun, 6 2004 as HmaxByShapeMethodModule and updated 18.02.2006 as HmaxByShapeMethod |
---|
4 | // belonging to the energy package. The former becomes obsolete |
---|
5 | |
---|
6 | #ifndef __HMAXBYSHAPEMETHOD_HH_ |
---|
7 | #define __HMAXBYSHAPEMETHOD_HH_ |
---|
8 | |
---|
9 | #include <TString.h> |
---|
10 | #include <TVector3.h> |
---|
11 | #include "EsafMsgSource.hh" |
---|
12 | #include "EnergyModule.hh" |
---|
13 | |
---|
14 | class TF1; |
---|
15 | class TH1F; |
---|
16 | |
---|
17 | class HmaxByShapeMethod : public EsafMsgSource, public TObject { |
---|
18 | public: |
---|
19 | HmaxByShapeMethod(EnergyModule*); // ctor |
---|
20 | HmaxByShapeMethod(); // ctor |
---|
21 | virtual ~HmaxByShapeMethod(); // dtor |
---|
22 | |
---|
23 | Bool_t Fit(TH1F*); // main method which makes the fit |
---|
24 | void FitHisto(TH1F*, Int_t, Int_t, Float_t); // auxilary method which makes the fit |
---|
25 | void Clear(); // memory clean |
---|
26 | void DensityToAltitude(); |
---|
27 | |
---|
28 | void Set(Float_t energy,Float_t timemax,TVector3 showerdir,TVector3 showermaxdir); |
---|
29 | void SetEnergy(Float_t e) { fEnergy = e; } // Set energy |
---|
30 | void SetShowerDir(TVector3 n) { fShowerDir = n; } // Set unit vector along the shower direction |
---|
31 | void SetShowerMaxDir(TVector3 n) { fShowerMaxDir = n; } // Set unit vector pointing to the EUSO from the shower maximum |
---|
32 | void SetFluoMaxTime(Float_t t) { fFluorMaxTime = t; } // Set Time corresponding to fluorescence maximum |
---|
33 | |
---|
34 | Double_t GetDensity() { return fDensity; } |
---|
35 | Double_t GetAltitude() { return fAltitude; } |
---|
36 | Double_t GetSigma() { return fSigma; } |
---|
37 | |
---|
38 | EnergyModule* GetEnergyModule() { return fEnergyModule;} |
---|
39 | private: |
---|
40 | EnergyModule *fEnergyModule; // pointer to the EnergyModule object |
---|
41 | Double_t fEnergy; // assumed energy |
---|
42 | Double_t fAltitude; // reconstructed altitude of shower maximum |
---|
43 | Double_t fSigma; // reconstructed sigma of shower (in microsecond) |
---|
44 | Double_t fDensity; // reconstructed air density at the shower maximum position |
---|
45 | TVector3 fShowerDir; // reconstructed unit vector along the shower direction |
---|
46 | TVector3 fShowerMaxDir; // reconstructed unit vector pointing to the EUSO from the shower maximum |
---|
47 | TF1* fFitFcn; // Fit function |
---|
48 | Float_t fChi2; // Chi2/NDF after the fit |
---|
49 | Double_t fFluorMaxTime; // Time corresponding to fluorescence maximum |
---|
50 | ClassDef(HmaxByShapeMethod,0) |
---|
51 | }; |
---|
52 | |
---|
53 | #endif /* __HMAXBYSHAPEMETHOD_HH_ */ |
---|
54 | |
---|