]>
Commit | Line | Data |
---|---|---|
57a6d361 | 1 | #ifndef ALIV0MODULE_H |
2 | #define ALIV0MODULE_H | |
3 | /************************************************************************** | |
4 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * * | |
6 | * Author: The ALICE Off-line Project. * | |
7 | * Contributors are mentioned in the code where appropriate. * | |
8 | * * | |
9 | * Permission to use, copy, modify and distribute this software and its * | |
10 | * documentation strictly for non-commercial purposes is hereby granted * | |
11 | * without fee, provided that the above copyright notice appears in all * | |
12 | * copies and that both the copyright notice and this permission notice * | |
13 | * appear in the supporting documentation. The authors make no claims * | |
14 | * about the suitability of this software for any purpose. It is * | |
15 | * provided "as is" without express or implied warranty. * | |
16 | **************************************************************************/ | |
17 | ||
18 | /*********************************************** | |
19 | ||
20 | Lambda Analysis Module - Header | |
21 | ------------------------------- | |
22 | ||
23 | This version: 27th April 2012 | |
24 | ||
25 | --- David Dobrigkeit Chinellato | |
26 | daviddc@ifi.unicamp.br | |
27 | ||
28 | ***********************************************/ | |
29 | ||
30 | class AliV0Module{ | |
31 | public: | |
32 | //Constructor | |
33 | AliV0Module(); | |
34 | AliV0Module(TString ParticleType); | |
35 | ||
36 | //Set Files to Use | |
37 | void SetRealDataFile ( TString RealDataFilename ); | |
38 | void SetMCDataFile ( TString MCDataFilename ); | |
39 | void SetFeedDownDataFile ( TString FeedDownDataFilename ); | |
40 | void SetOutputFile ( TString OutputFilename ); | |
41 | ||
42 | //Set Pt Bin Limits | |
43 | void SetPtBinLimits(Long_t got_ptbinnumb, const Double_t *got_ptbinlimits); | |
44 | ||
45 | //Set Rapidity Window | |
46 | void SetRapidityWindow(Double_t got_RapidityBoundary); | |
47 | ||
48 | //Set CINT1B/INEL to normalize to yield | |
49 | void SetCINT1BoverINEL(Double_t got_CINT1BoverINEL); | |
50 | ||
51 | //Set Cuts - topological | |
52 | void SetCutV0Radius (Double_t cut); | |
53 | void SetCutDCANegToPV (Double_t cut); | |
54 | void SetCutDCAPosToPV (Double_t cut); | |
55 | void SetCutDCAV0Daughters (Double_t cut); | |
56 | void SetCutV0CosPA (Double_t cut); | |
57 | ||
58 | //Set Cuts - other | |
59 | void SetCutProperLifetime (Double_t cut); | |
60 | void SetCutTPCPIDNSigmas (Double_t cut); | |
61 | void SetCutSigmaForSignalExtraction (Double_t cut); | |
62 | void SetCutLeastNumberOfCrossedRows (Double_t cut); | |
63 | void SetCutLeastNumberOfCrossedRowsOverFindable (Double_t cut); | |
64 | void SetCutDaughterEta (Double_t cut); | |
65 | void SetCutCompetingV0Rejection (Double_t cut); | |
66 | ||
67 | //Set Feeddown treatment | |
68 | void SetFeeddownTreatment ( TString FDMethod ); | |
69 | ||
70 | //Set Fit Background or not | |
71 | void SetFitBackground ( Bool_t fitBgSwitch ); | |
72 | ||
d1d5d7e6 | 73 | //Multiplicity Study Setters |
74 | void SetPerformMultiplicityStudy ( Bool_t lPerformMultStudy ); | |
75 | void SetLowMultValue ( Int_t lLoMultBound ); | |
76 | void SetHighMultValue ( Int_t lHiMultBound ); | |
77 | ||
78 | //Set Fit Background or not | |
79 | void SetSpecialArmenterosCutK0s ( Bool_t lSpecialArmenterosCutK0s ); | |
80 | ||
57a6d361 | 81 | //Do Analysis |
82 | void DoAnalysis(); | |
83 | ||
84 | //Set Default Cuts | |
85 | void SetDefaultCuts(); | |
86 | ||
87 | //Auxiliary Functions | |
88 | TString IntToString(int input); | |
89 | TString DoubleToString(double input); | |
90 | Double_t ErrorInRatio ( Double_t A, Double_t Aerr, Double_t B, Double_t Berr ); | |
91 | Double_t MyGeant3FlukaCorrectionForProtons(const Double_t *x, const Double_t *par); | |
92 | Double_t MyGeant3FlukaCorrectionForAntiProtons(const Double_t *x, const Double_t *par); | |
93 | Double_t MyLevyPtXi(const Double_t *pt, const Double_t *par); | |
94 | Double_t MyBgPol1(const Double_t *x, const Double_t *par); | |
95 | Double_t MyBgPolToEval1(const Double_t *x, const Double_t *par); | |
96 | Double_t RoundToThousandth( const Double_t lToRound ); | |
97 | ||
98 | private: | |
99 | //root file names | |
100 | TString fRealDataFile; | |
101 | TString fMCDataFile; | |
102 | TString fFeedDownDataFile; | |
103 | TString fOutputDataFile; | |
104 | ||
105 | //Store Pt Bin Limits | |
106 | //Max Number of Pt Bins Set here (100) | |
107 | Double_t fptbinlimits[100]; | |
108 | Double_t fptX[100]; | |
109 | Long_t fptbinnumb; | |
110 | ||
111 | //Rapidity Range Window | |
112 | Double_t fRapidityBoundary; | |
113 | ||
114 | //CINT1B/INEL for normalization | |
115 | Double_t fCINT1BoverINELratio; | |
116 | ||
117 | //Main Analysis Parameters | |
118 | //--- 5 Topological Selections | |
119 | Double_t fCutV0Radius; | |
120 | Double_t fCutDCANegToPV; | |
121 | Double_t fCutDCAPosToPV; | |
122 | Double_t fCutDCAV0Daughters; | |
123 | Double_t fCutV0CosPA; | |
124 | //--- Proper Lifetime | |
125 | Double_t fCutProperLifetime; | |
126 | //--- TPC dE/dx N-sigmas | |
127 | Double_t fCutTPCPIDNSigmas; | |
128 | //--- Sigmas for signal extraction | |
129 | Double_t fCutNSigmasForSignalExtraction; | |
130 | //--- Smallest Number of Crossed Rows in TPC accepted for tracks | |
131 | Double_t fCutLeastNumberOfCrossedRows; | |
132 | Double_t fCutLeastNumberOfCrossedRowsOverFindable; | |
133 | //--- Daughter Track eta cut | |
134 | Double_t fCutDaughterEta; | |
135 | //--- Competing V0 Species Rejection | |
136 | Double_t fCutCompetingV0Rejection; | |
137 | ||
138 | //WhichParticle switch: "Lambda", "AntiLambda" or "K0Short" | |
139 | TString fWhichParticle; | |
140 | ||
141 | //Do Fitting instead of bin counting switch | |
142 | Bool_t fFitBackgroundSwitch; | |
143 | ||
d1d5d7e6 | 144 | //Special Armenteros Selection For K0s |
145 | Bool_t fSpecialArmenterosCutK0s; | |
146 | ||
147 | //Perform multiplicity selection | |
148 | // --- (mult estimator in pp, centrality in PbPb) | |
149 | Bool_t fPerformMultiplicityStudy; | |
150 | Int_t fLoMultBound; | |
151 | Int_t fHiMultBound; | |
152 | ||
57a6d361 | 153 | //FeedDownTreatment switch: |
154 | // --- NoFD.............: Doesn't feeddown subtract at all | |
155 | // --- DoubleChargedXi..: Multiply Charged Xi subtraction by 2 | |
156 | // --- UseMCRatio.......: Fill FD Matrix with Xi- and Xi0 | |
157 | // (effectively use Xi0/Xi- from MC, should not be used with | |
158 | // Xi- and Xi+ enhanced datasets!!) | |
159 | TString fFDSwitch; | |
160 | }; | |
161 | #endif |