#include "AliFemtoEventCutEstimators.h"
#ifdef __ROOT__
ClassImp(AliFemtoEventCutEstimators)
#endif
AliFemtoEventCutEstimators::AliFemtoEventCutEstimators() :
AliFemtoEventCut(),
fEventMultEst1(),
fEventMultEst2(),
fEventMultEst3(),
fUseMultEst1(0),
fUseMultEst2(0),
fUseMultEst3(0),
fEventCentEst1(),
fEventCentEst2(),
fEventCentEst3(),
fEventCentEst4(),
fUseCentEst1(0),
fUseCentEst2(0),
fUseCentEst3(0),
fUseCentEst4(0),
fNEventsPassed(0),
fNEventsFailed(0)
{
fEventMultEst1[0] = 0; fEventMultEst1[1] = 10000;
fEventMultEst2[0] = 0; fEventMultEst2[1] = 10000;
fEventMultEst3[0] = 0; fEventMultEst3[1] = 10000;
fEventCentEst1[0] = 0; fEventCentEst1[1] = 1000.0;
fEventCentEst2[0] = 0; fEventCentEst2[1] = 1000.0;
fEventCentEst3[0] = 0; fEventCentEst3[1] = 1000.0;
fEventCentEst4[0] = 0; fEventCentEst4[1] = 1000.0;
fVertZPos[0] = -100.0;
fVertZPos[1] = 100.0;
}
AliFemtoEventCutEstimators::~AliFemtoEventCutEstimators(){
}
AliFemtoEventCutEstimators& AliFemtoEventCutEstimators::operator=(AliFemtoEventCutEstimators& c)
{
if (this != &c) {
fEventMultEst1[0] = c.fEventMultEst1[0]; fEventMultEst1[1] = c.fEventMultEst1[1];
fEventMultEst2[0] = c.fEventMultEst2[0]; fEventMultEst2[1] = c.fEventMultEst2[1];
fEventMultEst3[0] = c.fEventMultEst3[0]; fEventMultEst3[1] = c.fEventMultEst3[1];
fEventCentEst1[0] = c.fEventCentEst1[0]; fEventCentEst1[1] = c.fEventCentEst1[1];
fEventCentEst2[0] = c.fEventCentEst2[0]; fEventCentEst2[1] = c.fEventCentEst2[1];
fEventCentEst3[0] = c.fEventCentEst3[0]; fEventCentEst3[1] = c.fEventCentEst3[1];
fEventCentEst4[0] = c.fEventCentEst4[0]; fEventCentEst4[1] = c.fEventCentEst4[1];
fVertZPos[0] = c.fVertZPos[0];
fVertZPos[1] = c.fVertZPos[1];
}
return *this;
}
bool AliFemtoEventCutEstimators::Pass(const AliFemtoEvent* event){
bool goodEvent = true;
printf("Cutting event with %i %i %i - %i %i %i %i\n", fUseMultEst1, fUseMultEst2, fUseMultEst3, fUseCentEst1, fUseCentEst2, fUseCentEst3, fUseCentEst4);
printf(" On %i %i %i - %f %f %f %f\n", event->MultiplicityEstimateTracklets(), event->MultiplicityEstimateITSTPC(), event->MultiplicityEstimateITSPure(),
event->CentralityV0(), event->CentralityFMD(), event->CentralitySPD1(), event->CentralityTrk());
if (fUseMultEst1) { goodEvent &= ((event->MultiplicityEstimateTracklets() >= fEventMultEst1[0]) &&
(event->MultiplicityEstimateTracklets() <= fEventMultEst1[1])); }
if (fUseMultEst2) { goodEvent &= ((event->MultiplicityEstimateITSTPC() >= fEventMultEst2[0]) &&
(event->MultiplicityEstimateITSTPC() <= fEventMultEst2[1])); }
if (fUseMultEst3) { goodEvent &= ((event->MultiplicityEstimateITSPure() >= fEventMultEst3[0]) &&
(event->MultiplicityEstimateITSPure() <= fEventMultEst3[1])); }
if (fUseCentEst1) { goodEvent &= ((event->CentralityV0() > fEventCentEst1[0]) &&
(event->CentralityV0() < fEventCentEst1[1])); }
if (fUseCentEst2) { goodEvent &= ((event->CentralityFMD() > fEventCentEst2[0]) &&
(event->CentralityFMD() < fEventCentEst2[1])); }
if (fUseCentEst3) { goodEvent &= ((event->CentralitySPD1() > fEventCentEst3[0]) &&
(event->CentralitySPD1() < fEventCentEst3[1])); }
if (fUseCentEst4) { goodEvent &= ((event->CentralityTrk() > fEventCentEst4[0]) &&
(event->CentralityTrk() < fEventCentEst4[1])); }
double vertexZPos = event->PrimVertPos().z();
goodEvent &=
((vertexZPos > fVertZPos[0]) &&
(vertexZPos < fVertZPos[1]));
goodEvent ? fNEventsPassed++ : fNEventsFailed++ ;
return (goodEvent);
}
AliFemtoString AliFemtoEventCutEstimators::Report(){
string stemp;
char ctemp[100];
snprintf(ctemp , 100, "\nMultiplicity:\t %d-%d",fEventMultEst2[0],fEventMultEst2[1]);
stemp = ctemp;
snprintf(ctemp , 100, "\nVertex Z-position:\t %E-%E",fVertZPos[0],fVertZPos[1]);
stemp += ctemp;
snprintf(ctemp , 100, "\nNumber of events which passed:\t%ld Number which failed:\t%ld",fNEventsPassed,fNEventsFailed);
stemp += ctemp;
AliFemtoString returnThis = stemp;
return returnThis;
}
AliFemtoEventCutEstimators.cxx:1 AliFemtoEventCutEstimators.cxx:2 AliFemtoEventCutEstimators.cxx:3 AliFemtoEventCutEstimators.cxx:4 AliFemtoEventCutEstimators.cxx:5 AliFemtoEventCutEstimators.cxx:6 AliFemtoEventCutEstimators.cxx:7 AliFemtoEventCutEstimators.cxx:8 AliFemtoEventCutEstimators.cxx:9 AliFemtoEventCutEstimators.cxx:10 AliFemtoEventCutEstimators.cxx:11 AliFemtoEventCutEstimators.cxx:12 AliFemtoEventCutEstimators.cxx:13 AliFemtoEventCutEstimators.cxx:14 AliFemtoEventCutEstimators.cxx:15 AliFemtoEventCutEstimators.cxx:16 AliFemtoEventCutEstimators.cxx:17 AliFemtoEventCutEstimators.cxx:18 AliFemtoEventCutEstimators.cxx:19 AliFemtoEventCutEstimators.cxx:20 AliFemtoEventCutEstimators.cxx:21 AliFemtoEventCutEstimators.cxx:22 AliFemtoEventCutEstimators.cxx:23 AliFemtoEventCutEstimators.cxx:24 AliFemtoEventCutEstimators.cxx:25 AliFemtoEventCutEstimators.cxx:26 AliFemtoEventCutEstimators.cxx:27 AliFemtoEventCutEstimators.cxx:28 AliFemtoEventCutEstimators.cxx:29 AliFemtoEventCutEstimators.cxx:30 AliFemtoEventCutEstimators.cxx:31 AliFemtoEventCutEstimators.cxx:32 AliFemtoEventCutEstimators.cxx:33 AliFemtoEventCutEstimators.cxx:34 AliFemtoEventCutEstimators.cxx:35 AliFemtoEventCutEstimators.cxx:36 AliFemtoEventCutEstimators.cxx:37 AliFemtoEventCutEstimators.cxx:38 AliFemtoEventCutEstimators.cxx:39 AliFemtoEventCutEstimators.cxx:40 AliFemtoEventCutEstimators.cxx:41 AliFemtoEventCutEstimators.cxx:42 AliFemtoEventCutEstimators.cxx:43 AliFemtoEventCutEstimators.cxx:44 AliFemtoEventCutEstimators.cxx:45 AliFemtoEventCutEstimators.cxx:46 AliFemtoEventCutEstimators.cxx:47 AliFemtoEventCutEstimators.cxx:48 AliFemtoEventCutEstimators.cxx:49 AliFemtoEventCutEstimators.cxx:50 AliFemtoEventCutEstimators.cxx:51 AliFemtoEventCutEstimators.cxx:52 AliFemtoEventCutEstimators.cxx:53 AliFemtoEventCutEstimators.cxx:54 AliFemtoEventCutEstimators.cxx:55 AliFemtoEventCutEstimators.cxx:56 AliFemtoEventCutEstimators.cxx:57 AliFemtoEventCutEstimators.cxx:58 AliFemtoEventCutEstimators.cxx:59 AliFemtoEventCutEstimators.cxx:60 AliFemtoEventCutEstimators.cxx:61 AliFemtoEventCutEstimators.cxx:62 AliFemtoEventCutEstimators.cxx:63 AliFemtoEventCutEstimators.cxx:64 AliFemtoEventCutEstimators.cxx:65 AliFemtoEventCutEstimators.cxx:66 AliFemtoEventCutEstimators.cxx:67 AliFemtoEventCutEstimators.cxx:68 AliFemtoEventCutEstimators.cxx:69 AliFemtoEventCutEstimators.cxx:70 AliFemtoEventCutEstimators.cxx:71 AliFemtoEventCutEstimators.cxx:72 AliFemtoEventCutEstimators.cxx:73 AliFemtoEventCutEstimators.cxx:74 AliFemtoEventCutEstimators.cxx:75 AliFemtoEventCutEstimators.cxx:76 AliFemtoEventCutEstimators.cxx:77 AliFemtoEventCutEstimators.cxx:78 AliFemtoEventCutEstimators.cxx:79 AliFemtoEventCutEstimators.cxx:80 AliFemtoEventCutEstimators.cxx:81 AliFemtoEventCutEstimators.cxx:82 AliFemtoEventCutEstimators.cxx:83 AliFemtoEventCutEstimators.cxx:84 AliFemtoEventCutEstimators.cxx:85 AliFemtoEventCutEstimators.cxx:86 AliFemtoEventCutEstimators.cxx:87 AliFemtoEventCutEstimators.cxx:88 AliFemtoEventCutEstimators.cxx:89 AliFemtoEventCutEstimators.cxx:90 AliFemtoEventCutEstimators.cxx:91 AliFemtoEventCutEstimators.cxx:92 AliFemtoEventCutEstimators.cxx:93 AliFemtoEventCutEstimators.cxx:94 AliFemtoEventCutEstimators.cxx:95 AliFemtoEventCutEstimators.cxx:96 AliFemtoEventCutEstimators.cxx:97 AliFemtoEventCutEstimators.cxx:98 AliFemtoEventCutEstimators.cxx:99 AliFemtoEventCutEstimators.cxx:100 AliFemtoEventCutEstimators.cxx:101 AliFemtoEventCutEstimators.cxx:102 AliFemtoEventCutEstimators.cxx:103 AliFemtoEventCutEstimators.cxx:104 AliFemtoEventCutEstimators.cxx:105 AliFemtoEventCutEstimators.cxx:106 AliFemtoEventCutEstimators.cxx:107 AliFemtoEventCutEstimators.cxx:108 AliFemtoEventCutEstimators.cxx:109 AliFemtoEventCutEstimators.cxx:110 AliFemtoEventCutEstimators.cxx:111 AliFemtoEventCutEstimators.cxx:112 AliFemtoEventCutEstimators.cxx:113 AliFemtoEventCutEstimators.cxx:114 AliFemtoEventCutEstimators.cxx:115 AliFemtoEventCutEstimators.cxx:116 AliFemtoEventCutEstimators.cxx:117 AliFemtoEventCutEstimators.cxx:118 AliFemtoEventCutEstimators.cxx:119