]>
Commit | Line | Data |
---|---|---|
d0e92d9a | 1 | //////////////////////////////////////////////////////////////////////////////// |
2 | // // | |
3 | // AliFemtoBasicEventCut - the basic cut for events. // | |
4 | // Only cuts on event multiplicity and z-vertex position // | |
5 | // // | |
6 | //////////////////////////////////////////////////////////////////////////////// | |
7 | ||
8 | #include "AliFemtoBasicEventCut.h" | |
ea77036b | 9 | //#include <cstdio> |
d0e92d9a | 10 | |
11 | #ifdef __ROOT__ | |
12 | ClassImp(AliFemtoBasicEventCut) | |
13 | #endif | |
14 | ||
15 | AliFemtoBasicEventCut::AliFemtoBasicEventCut() : | |
63a5982a | 16 | AliFemtoEventCut(), |
17 | fEventMult(), | |
18 | fVertZPos(), | |
19 | fAcceptBadVertex(false), | |
20 | fNEventsPassed(0), | |
21 | fNEventsFailed(0) | |
d0e92d9a | 22 | { |
ea77036b | 23 | // Default constructor |
63a5982a | 24 | fEventMult[0] = 0; |
25 | fEventMult[1] = 100000; | |
26 | fVertZPos[0] = -100.0; | |
27 | fVertZPos[1] = 100.0; | |
d0e92d9a | 28 | } |
29 | //------------------------------ | |
ea77036b | 30 | AliFemtoBasicEventCut::~AliFemtoBasicEventCut(){ |
31 | // Default destructor | |
32 | } | |
d0e92d9a | 33 | //------------------------------ |
34 | bool AliFemtoBasicEventCut::Pass(const AliFemtoEvent* event){ | |
ea77036b | 35 | // Pass events if they fall within the multiplicity and z-vertex |
36 | // position range. Fail otherwise | |
d0e92d9a | 37 | int mult = event->NumberOfTracks(); |
ea77036b | 38 | double vertexZPos = event->PrimVertPos().z(); |
d0e92d9a | 39 | cout << "AliFemtoBasicEventCut:: mult: " << fEventMult[0] << " < " << mult << " < " << fEventMult[1] << endl; |
ea77036b | 40 | cout << "AliFemtoBasicEventCut:: VertexZPos: " << fVertZPos[0] << " < " << vertexZPos << " < " << fVertZPos[1] << endl; |
475f6859 | 41 | cout << "AliFemtoBasicEventCut:: VertexZErr: " << event->PrimVertCov()[4] << endl; |
d0e92d9a | 42 | bool goodEvent = |
d58bc7b2 | 43 | ((mult >= fEventMult[0]) && |
44 | (mult <= fEventMult[1]) && | |
ea77036b | 45 | (vertexZPos > fVertZPos[0]) && |
63a5982a | 46 | (vertexZPos < fVertZPos[1]) && |
47 | (fAcceptBadVertex || (event->PrimVertCov()[4] > -1000.0))); | |
d0e92d9a | 48 | goodEvent ? fNEventsPassed++ : fNEventsFailed++ ; |
49 | cout << "AliFemtoBasicEventCut:: return : " << goodEvent << endl; | |
50 | return (goodEvent); | |
51 | } | |
52 | //------------------------------ | |
53 | AliFemtoString AliFemtoBasicEventCut::Report(){ | |
ea77036b | 54 | // Prepare report |
55 | string stemp; | |
56 | char ctemp[100]; | |
57 | sprintf(ctemp,"\nMultiplicity:\t %d-%d",fEventMult[0],fEventMult[1]); | |
58 | stemp = ctemp; | |
59 | sprintf(ctemp,"\nVertex Z-position:\t %E-%E",fVertZPos[0],fVertZPos[1]); | |
60 | stemp += ctemp; | |
61 | sprintf(ctemp,"\nNumber of events which passed:\t%ld Number which failed:\t%ld",fNEventsPassed,fNEventsFailed); | |
62 | stemp += ctemp; | |
63 | AliFemtoString returnThis = stemp; | |
d0e92d9a | 64 | return returnThis; |
65 | } | |
63a5982a | 66 | void AliFemtoBasicEventCut::SetAcceptBadVertex(bool b) |
67 | { | |
68 | fAcceptBadVertex = b; | |
69 | } | |
70 | bool AliFemtoBasicEventCut::GetAcceptBadVertex() | |
71 | { | |
72 | return fAcceptBadVertex; | |
73 | } |