11 #define EXAMINE_LOW_MULT_PARTICLES // this means look at protons and kaons...
18 #ifdef EXAMINE_LOW_MULT_PARTICLES
27 void ExamineTxtFile(Int_t nevents=1,
28 const char *MainFile=
"/home/scratch/lisa/blended_events.txt")
35 gSystem->Load(
"St_base");
36 gSystem->Load(
"StChain");
37 gSystem->Load(
"St_Tables");
38 gSystem->Load(
"StUtilities");
39 gSystem->Load(
"StAnalysisUtilities");
40 gSystem->Load(
"StMagF");
41 gSystem->Load(
"StIOMaker");
42 gSystem->Load(
"StarClassLibrary");
43 gSystem->Load(
"StEvent");
44 gSystem->Load(
"StEventMaker");
45 gSystem->Load(
"StHbtMaker");
46 gSystem->Load(
"StV0MiniDstMaker");
48 cout <<
"Dynamic loading done" << endl;
70 cout <<
"StHbtMaker instantiated"<<endl;
75 cout <<
"StHbtMaker::Init - setting up Reader and Analyses..." << endl;
87 Reader->SetFileName(MainFile);
94 TheManager->SetEventReader(Reader);
96 cout <<
"READER SET UP.... " << endl;
107 #ifdef EXAMINE_LOW_MULT_PARTICLES
114 evcut->SetEventMult(0,10000);
115 evcut->SetVertZPos(-35.0,35.0);
116 anal->SetEventCut(evcut);
119 trkcut->SetNSigmaPion(1.0,1000.0);
120 trkcut->SetNSigmaKaon(1.0,1000.0);
121 trkcut->SetNSigmaProton(-1.5,1.5);
122 trkcut->SetNHits(5,50);
123 trkcut->SetPt(0.1,0.8);
124 trkcut->SetRapidity(-1.0,1.0);
125 trkcut->SetDCA(-0.5,0.5);
126 trkcut->SetCharge(1);
127 trkcut->SetMass(0.938);
128 anal->SetFirstParticleCut(trkcut);
129 anal->SetSecondParticleCut(trkcut);
132 anal->SetPairCut(paircut);
134 anal->SetNumEventsToMix(5);
136 QvecCF_prot_prot =
new QvecCorrFctn(
"proton-proton",50,0.0,0.2);
137 anal->AddCorrFctn(QvecCF_prot_prot);
142 TheManager->AddAnalysis(anal);
150 evcut->SetEventMult(0,10000);
151 evcut->SetVertZPos(-35.0,35.0);
152 anal->SetEventCut(evcut);
155 trkcut->SetNSigmaPion(1.0,1000.0);
156 trkcut->SetNSigmaKaon(-1.5,1.5);
157 trkcut->SetNSigmaProton(-1000.0,-1.0);
158 trkcut->SetNHits(5,50);
159 trkcut->SetPt(0.1,0.8);
160 trkcut->SetRapidity(-1.0,1.0);
161 trkcut->SetDCA(-0.5,0.5);
162 trkcut->SetCharge(1);
163 trkcut->SetMass(0.494);
164 anal->SetFirstParticleCut(trkcut);
165 anal->SetSecondParticleCut(trkcut);
168 anal->SetPairCut(paircut);
170 anal->SetNumEventsToMix(5);
172 QvecCF_kp_kp =
new QvecCorrFctn(
"Kplus-Kplus",50,0.0,0.2);
173 anal->AddCorrFctn(QvecCF_kp_kp);
178 TheManager->AddAnalysis(anal);
186 evcut->SetEventMult(0,10000);
187 evcut->SetVertZPos(-35.0,35.0);
188 anal->SetEventCut(evcut);
191 trkcut->SetNSigmaPion(1.0,1000.0);
192 trkcut->SetNSigmaKaon(-1.5,1.5);
193 trkcut->SetNSigmaProton(-1000.0,-1.0);
194 trkcut->SetNHits(5,50);
195 trkcut->SetPt(0.1,0.8);
196 trkcut->SetRapidity(-1.0,1.0);
197 trkcut->SetDCA(-0.5,0.5);
198 trkcut->SetCharge(1);
199 trkcut->SetMass(0.494);
200 anal->SetFirstParticleCut(trkcut);
203 trkcut->SetNSigmaPion(1.0,1000.0);
204 trkcut->SetNSigmaKaon(-1.5,1.5);
205 trkcut->SetNSigmaProton(-1000.0,-1.0);
206 trkcut->SetNHits(5,50);
207 trkcut->SetPt(0.1,0.8);
208 trkcut->SetRapidity(-1.0,1.0);
209 trkcut->SetDCA(-0.5,0.5);
210 trkcut->SetCharge(-1);
211 trkcut->SetMass(0.494);
212 anal->SetSecondParticleCut(trkcut);
215 anal->SetPairCut(paircut);
217 anal->SetNumEventsToMix(5);
219 QvecCF_kp_km =
new QvecCorrFctn(
"Kplus-Kminus",50,0.0,0.2);
220 anal->AddCorrFctn(QvecCF_kp_km);
225 TheManager->AddAnalysis(anal);
228 #else // look at pions instead of protons and kaons
236 evcut->SetEventMult(0,10000);
237 evcut->SetVertZPos(-35.0,35.0);
238 anal->SetEventCut(evcut);
241 trkcut->SetNSigmaPion(-1.5,1.5);
242 trkcut->SetNSigmaKaon(-1000.0,-1.0);
243 trkcut->SetNSigmaProton(-1000.0,-1.0);
244 trkcut->SetNHits(5,50);
245 trkcut->SetPt(0.1,0.8);
246 trkcut->SetRapidity(-1.0,1.0);
247 trkcut->SetDCA(-0.5,0.5);
248 trkcut->SetCharge(1);
249 trkcut->SetMass(0.138);
250 anal->SetFirstParticleCut(trkcut);
251 anal->SetSecondParticleCut(trkcut);
254 anal->SetPairCut(paircut);
256 anal->SetNumEventsToMix(5);
258 QvecCF_pip_pip =
new QvecCorrFctn(
"piplus-piplus",50,0.0,0.2);
259 anal->AddCorrFctn(QvecCF_pip_pip);
264 TheManager->AddAnalysis(anal);
272 evcut->SetEventMult(0,10000);
273 evcut->SetVertZPos(-35.0,35.0);
274 anal->SetEventCut(evcut);
277 trkcut->SetNSigmaPion(-1.5,1.5);
278 trkcut->SetNSigmaKaon(-1000.0,-1.0);
279 trkcut->SetNSigmaProton(-1000.0,-1.0);
280 trkcut->SetNHits(5,50);
281 trkcut->SetPt(0.1,0.8);
282 trkcut->SetRapidity(-1.0,1.0);
283 trkcut->SetDCA(-0.5,0.5);
284 trkcut->SetCharge(1);
285 trkcut->SetMass(0.138);
286 anal->SetFirstParticleCut(trkcut);
290 trkcut->SetNSigmaPion(-1.5,1.5);
291 trkcut->SetNSigmaKaon(-1000.0,-1.0);
292 trkcut->SetNSigmaProton(-1000.0,-1.0);
293 trkcut->SetNHits(5,50);
294 trkcut->SetPt(0.1,0.8);
295 trkcut->SetRapidity(-1.0,1.0);
296 trkcut->SetDCA(-0.5,0.5);
297 trkcut->SetCharge(-1);
298 trkcut->SetMass(0.138);
300 anal->SetSecondParticleCut(trkcut);
303 anal->SetPairCut(paircut);
305 anal->SetNumEventsToMix(5);
307 QvecCF_pip_pim =
new QvecCorrFctn(
"piplus-piminus",50,0.0,0.2);
308 anal->AddCorrFctn(QvecCF_pip_pim);
313 TheManager->AddAnalysis(anal);
315 #endif // EXAMINE_LOW_MULT_PARTICLES
323 cout <<
"Initialization failed \n";
331 EventLoop:
if (iev <= nevents && !istat) {
332 cout <<
"StHbtExample -- Working on eventNumber " << iev <<
" of " << nevents << endl;
334 istat = chain->
Make(iev);
335 if (istat) {cout <<
"Last event processed. Status = " << istat << endl;}
336 iev++;
goto EventLoop;
352 cout <<
"StHbtExample -- Done with event loop" << endl;
virtual void Clear(Option_t *option="")
User defined functions.