// event QA
fnTracksVertex(1), // QA tracks pointing to principal vertex (= 3 default)
fZVertex(7.),
+fAcceptOnlyMuEvents(kFALSE),
fCentralityMethod("V0M"),
// track cuts
fTrackEtaCut(0.8),
TTree *settingsTree = new TTree("UEAnalysisSettings","Analysis Settings in UE estimation");
settingsTree->Branch("fnTracksVertex", &fnTracksVertex,"nTracksVertex/I");
settingsTree->Branch("fZVertex", &fZVertex,"ZVertex/D");
+ settingsTree->Branch("fAcceptOnlyMuEvents", &fAcceptOnlyMuEvents,"AcceptOnlyMuEvents/O");
//settingsTree->Branch("fCentralityMethod", fCentralityMethod.Data(),"CentralityMethod/C");
settingsTree->Branch("fTrackEtaCut", &fTrackEtaCut, "TrackEtaCut/D");
settingsTree->Branch("fTrackEtaCutMin", &fTrackEtaCutMin, "TrackEtaCutMin/D");
if (!fAnalyseUE->VertexSelection(vertexSupplier, 0, fZVertex))
return;
-
- Float_t zVtx = 0;
+
+ Float_t zVtx = 0;
if (fAOD)
zVtx = ((AliAODMCHeader*) vertexSupplier)->GetVtxZ();
else
return;
}
+ // Reject events without a muon in the muon arm ************************************************
+ if(fAcceptOnlyMuEvents && !IsMuEvent())return;
+
// Vertex selection *************************************************
if(!fAnalyseUE->VertexSelection(inputEvent, fnTracksVertex, fZVertex)) return;
return obj;
}
+//____________________________________________________________________
+Bool_t AliAnalysisTaskPhiCorrelations::IsMuEvent(){
+
+ if(!fAOD)
+ AliFatal("Muon selection only implemented on AOD");//FIXME to be implemented also for ESDs as in AliAnalyseLeadingTrackUE::GetAcceptedPArticles
+ for (Int_t iTrack = 0; iTrack < fAOD->GetNTracks(); iTrack++) {
+ AliAODTrack* track = fAOD->GetTrack(iTrack);
+ if (!track->IsMuonTrack()) continue;
+ //Float_t dca = track->DCA();
+ //Float_t chi2 = track->Chi2perNDF();
+ Float_t rabs = track->GetRAtAbsorberEnd();
+ Float_t eta = track->Eta();
+ Int_t matching = track->GetMatchTrigger();
+ if (rabs < 17.6 || rabs > 89.5) continue;
+ if (eta < -4 || eta > -2.5) continue;
+ if (matching < 2) continue;
+ return kTRUE;
+ }
+ return kFALSE;
+
+}
// for event QA
void SetTracksInVertex( Int_t val ){ fnTracksVertex = val; }
void SetZVertex( Double_t val ) { fZVertex = val; }
+ void SetAcceptOnlyMuEvents( Bool_t val ) { fAcceptOnlyMuEvents = val; }
// track cuts
void SetTrackEtaCut( Double_t val ) { fTrackEtaCut = val; }
Bool_t AcceptEventCentralityWeight(Double_t centrality);
void ShiftTracks(TObjArray* tracks, Double_t angle);
TObjArray* GetParticlesFromDetector(AliVEvent* inputEvent, Int_t idet);
+ Bool_t IsMuEvent();
// General configuration
Int_t fDebug; // Debug flag
TList* fListOfHistos; // Output list of containers
// Event QA cuts
- Int_t fnTracksVertex; // QA tracks pointing to principal vertex
- Double_t fZVertex; // Position of Vertex in Z direction
- TString fCentralityMethod; // Method to determine centrality
+ Int_t fnTracksVertex; // QA tracks pointing to principal vertex
+ Double_t fZVertex; // Position of Vertex in Z direction
+ Bool_t fAcceptOnlyMuEvents; // Only Events with at least one muon are accepted
+ TString fCentralityMethod; // Method to determine centrality
// Track cuts
Double_t fTrackEtaCut; // Maximum Eta cut on particles
Bool_t fFillpT; // fill sum pT instead of number density
- ClassDef(AliAnalysisTaskPhiCorrelations, 45); // Analysis task for delta phi correlations
+ ClassDef(AliAnalysisTaskPhiCorrelations, 46); // Analysis task for delta phi correlations
};
class AliDPhiBasicParticle : public AliVParticle