From: jbook Date: Thu, 13 Feb 2014 14:40:10 +0000 (+0100) Subject: filter bits, variables X-Git-Url: http://git.uio.no/git/?a=commitdiff_plain;h=d05d1dfcc98d38e34c6cbbed4d51a91554a4ba4a;p=u%2Fmrichter%2FAliRoot.git filter bits, variables --- diff --git a/PWGDQ/dielectron/AliDielectronTrackCuts.h b/PWGDQ/dielectron/AliDielectronTrackCuts.h index a5514d97dfd..aa8a0b6676b 100644 --- a/PWGDQ/dielectron/AliDielectronTrackCuts.h +++ b/PWGDQ/dielectron/AliDielectronTrackCuts.h @@ -30,7 +30,7 @@ public: kSDD0=0x0004, kSDD1=0x0008, kSSD0=0x0010, kSSD1=0x0020}; enum ITSclusterCutType { kOneOf=0, kAtLeast, kExact }; - enum EFilterBit { kSwitchOff=0, kTPCqual=1, kTPCqualSPDany=4, kTPCqualSPDanyPIDele=8 }; + enum EFilterBit { kSwitchOff=0, kTPCqual=1, kITSonly=2, kTPCqualSPDany=4, kTPCqualSPDanyPIDele=8, kTPConly=128 }; AliDielectronTrackCuts(); AliDielectronTrackCuts(const char*name, const char* title); diff --git a/PWGDQ/dielectron/AliDielectronVarManager.cxx b/PWGDQ/dielectron/AliDielectronVarManager.cxx index 4488a1d290f..d28404a1f61 100644 --- a/PWGDQ/dielectron/AliDielectronVarManager.cxx +++ b/PWGDQ/dielectron/AliDielectronVarManager.cxx @@ -59,6 +59,8 @@ const char* AliDielectronVarManager::fgkParticleNames[AliDielectronVarManager::k {"TPCchi2PerCluster", "#chi^{2}/^{}N_{cls}^{TPC}", ""}, {"TPCclsDiff", "N_{d#it{E}/d#it{x} points}^{TPC} - N_{cls}^{TPC}", ""}, {"TPCclsSegments", "N_{segments}^{TPC}", ""}, + {"TPCclsIRO", "N_{clsIRO}^{TPC}", ""}, + {"TPCclsORO", "N_{clsORO}^{TPC}", ""}, {"TrackStatus", "TrackStatus", ""}, {"FilterBit", "AOD filter bit", ""}, @@ -255,6 +257,7 @@ const char* AliDielectronVarManager::fgkParticleNames[AliDielectronVarManager::k {"MultV0", "multiplicity V0", ""}, {"EqMultV0A", "equalized multiplicity V0A", ""}, {"EqMultV0C", "equalized multiplicity V0C", ""}, + {"EqMultV0", "equalized multiplicity V0", ""}, {"AdcV0A", "AdcV0A", ""}, {"AdcV0C", "AdcV0C", ""}, {"AdcV0", "AdcV0", ""}, diff --git a/PWGDQ/dielectron/AliDielectronVarManager.h b/PWGDQ/dielectron/AliDielectronVarManager.h index 28795431d4e..736b77f0fef 100644 --- a/PWGDQ/dielectron/AliDielectronVarManager.h +++ b/PWGDQ/dielectron/AliDielectronVarManager.h @@ -113,6 +113,8 @@ public: kTPCchi2Cl, // chi2/cl in TPC kTPCclsDiff, // TPC cluster difference kTPCclsSegments, // TPC cluster segments + kTPCclsIRO, // TPC clusters inner read out + kTPCclsORO, // TPC clusters outer read out kTrackStatus, // track status bits kFilterBit, // AOD filter bits @@ -319,6 +321,7 @@ public: kMultV0, kEqMultV0A, // equalized VZERO multiplicity kEqMultV0C, + kEqMultV0, kAdcV0A, kAdcV0C, kAdcV0, @@ -621,7 +624,7 @@ inline void AliDielectronVarManager::FillVarESDtrack(const AliESDtrack *particle values[AliDielectronVarManager::kTRDsignal] = particle->GetTRDsignal(); values[AliDielectronVarManager::kTPCclsDiff] = tpcSignalN-tpcNcls; values[AliDielectronVarManager::kTPCclsSegments] = 0.0; - const UChar_t threshold = 5; + UChar_t threshold = 5; TBits tpcClusterMap = particle->GetTPCClusterMap(); UChar_t n=0; UChar_t j=0; for(UChar_t i=0; i<8; ++i) { @@ -629,6 +632,19 @@ inline void AliDielectronVarManager::FillVarESDtrack(const AliESDtrack *particle for(j=i*20; j<(i+1)*20 && j<159; ++j) n+=tpcClusterMap.TestBitNumber(j); if(n>=threshold) values[AliDielectronVarManager::kTPCclsSegments] += 1.0; } + + n=0; + threshold=0; + values[AliDielectronVarManager::kTPCclsIRO]=0.; + for(j=0; j<63; ++j) n+=tpcClusterMap.TestBitNumber(j); + if(n>=threshold) values[AliDielectronVarManager::kTPCclsIRO] = n; + n=0; + threshold=0; + values[AliDielectronVarManager::kTPCclsORO]=0.; + for(j=63; j<159; ++j) n+=tpcClusterMap.TestBitNumber(j); + if(n>=threshold) values[AliDielectronVarManager::kTPCclsORO] = n; + + values[AliDielectronVarManager::kTrackStatus] = (Double_t)particle->GetStatus(); values[AliDielectronVarManager::kFilterBit] = 0; @@ -819,7 +835,7 @@ inline void AliDielectronVarManager::FillVarAODTrack(const AliAODTrack *particle values[AliDielectronVarManager::kTRDchi2] = (particle->GetTRDntrackletsPID()!=0.?particle->GetTRDchi2():-1); values[AliDielectronVarManager::kTRDsignal] = particle->GetTRDsignal(); values[AliDielectronVarManager::kTPCclsSegments] = 0.0; - const UChar_t threshold = 5; + UChar_t threshold = 5; TBits tpcClusterMap = particle->GetTPCClusterMap(); UChar_t n=0; UChar_t j=0; for(UChar_t i=0; i<8; ++i) { @@ -828,6 +844,18 @@ inline void AliDielectronVarManager::FillVarAODTrack(const AliAODTrack *particle if(n>=threshold) values[AliDielectronVarManager::kTPCclsSegments] += 1.0; } + n=0; + threshold=0; + values[AliDielectronVarManager::kTPCclsIRO]=0.; + for(j=0; j<63; ++j) n+=tpcClusterMap.TestBitNumber(j); + if(n>=threshold) values[AliDielectronVarManager::kTPCclsIRO] = n; + n=0; + threshold=0; + values[AliDielectronVarManager::kTPCclsORO]=0.; + for(j=63; j<159; ++j) n+=tpcClusterMap.TestBitNumber(j); + if(n>=threshold) values[AliDielectronVarManager::kTPCclsORO] = n; + + values[AliDielectronVarManager::kTPCchi2Cl] = (tpcNcls>0)?particle->Chi2perNDF()*(tpcNcls-5)/tpcNcls:-1.; // it is stored as normalized to tpcNcls-5 (see AliAnalysisTaskESDfilter) values[AliDielectronVarManager::kTrackStatus] = (Double_t)particle->GetStatus(); values[AliDielectronVarManager::kFilterBit] = (Double_t)particle->GetFilterMap(); @@ -1784,6 +1812,7 @@ inline void AliDielectronVarManager::FillVarVEvent(const AliVEvent *event, Doubl //values[AliDielectronVarManager::kAdcV0C] += vzeroData->GetAdcV0C(i); } values[AliDielectronVarManager::kMultV0] = values[AliDielectronVarManager::kMultV0A] + values[AliDielectronVarManager::kMultV0C]; + values[AliDielectronVarManager::kEqMultV0] = values[AliDielectronVarManager::kEqMultV0A] + values[AliDielectronVarManager::kEqMultV0C]; values[AliDielectronVarManager::kAdcV0] = values[AliDielectronVarManager::kAdcV0A] + values[AliDielectronVarManager::kAdcV0C]; // VZERO event plane quantities Double_t qvec[3]={0.0};