#include <TClonesArray.h>
#include <TH1F.h>
#include <TH2F.h>
+#include <THnSparse.h>
#include <TList.h>
#include <TLorentzVector.h>
#include <TParameter.h>
#include "AliESDInputHandler.h"
#include "AliEmcalJet.h"
#include "AliVCluster.h"
+#include "AliRhoParameter.h"
+#include "AliEmcalParticle.h"
ClassImp(AliAnalysisTaskEmcalJetSpectra)
//________________________________________________________________________
AliAnalysisTaskEmcalJetSpectra::AliAnalysisTaskEmcalJetSpectra() :
- AliAnalysisTaskSE(),
- fTracksName("tracks"),
- fJetsName("jets"),
- fClustersName("clusters"),
- fRhos1Name("fArrRhos"),
- fRhos2Name("fArrRhos"),
- fRhos3Name("fArrRhos"),
- fPhimin(-10),
- fPhimax(10),
- fEtamin(-0.9),
- fEtamax(0.9),
- fAreacut(0.0),
- fESD(0),
- fOutputList(0),
- fHistCentrality(0),
- fHistDeltaRho12vsCent(0),
- fHistDeltaRho13vsCent(0),
- fHistDeltaRho23vsCent(0),
- fHistDeltaJetPt12vsCent(0),
- fHistDeltaJetPt13vsCent(0),
- fHistDeltaJetPt23vsCent(0),
- fHistRho1vsCent(0),
- fHistRho2vsCent(0),
- fHistRho3vsCent(0)
+ AliAnalysisTaskEmcalJet("spectra",kFALSE),
+ fHistRhovsCent(0),
+ fHistNjetvsCent(0)
{
// Default constructor.
+ for (Int_t i = 0;i<6;++i){
+ fHistJetPtvsTrackPt[i] = 0;
+ fHistRawJetPtvsTrackPt[i] = 0;
+ fHistTrackPt[i] = 0;
+ fHistEP0[i] = 0;
+ fHistEP0A[i] = 0;
+ fHistEP0C[i] = 0;
+ fHistEPAvsC[i] = 0;
+ fHistJetPtvsdEP[i] = 0;
+ fHistJetPtvsdEPBias[i] = 0;
+ fHistRhovsEP[i] = 0;
- for (Int_t i = 0;i<6;++i) {
- fHistRawJetPt[i] = 0;
- fHistAreavsRawPt[i] = 0;
- for (Int_t j = 0;j<4;++j) {
- fHistNEFvsPt[i][j] = 0;
- fHistZvsPt[i][j] = 0;
- fHistZchvsPt[i][j] = 0;
- fHistZemvsPt[i][j] = 0;
- fHistJetPt[i][j] = 0;
- fHistNconsvsPt[i][j] = 0;
- fHistJetPt3[i][j] = 0;
- fHistJetPt5[i][j] = 0;
- fHistJetPt7[i][j] = 0;
- fHistJetPt9[i][j] = 0;
- }
}
+ SetMakeGeneralHistograms(kTRUE);
}
//________________________________________________________________________
AliAnalysisTaskEmcalJetSpectra::AliAnalysisTaskEmcalJetSpectra(const char *name) :
- AliAnalysisTaskSE(name),
- fTracksName("tracks"),
- fJetsName("jets"),
- fClustersName("clusters"),
- fRhos1Name("fArrRhos"),
- fRhos2Name("fArrRhos"),
- fRhos3Name("fArrRhos"),
- fPhimin(-10),
- fPhimax(10),
- fEtamin(-0.9),
- fEtamax(0.9),
- fAreacut(0.0),
- fESD(0),
- fOutputList(0),
- fHistCentrality(0),
- fHistDeltaRho12vsCent(0),
- fHistDeltaRho13vsCent(0),
- fHistDeltaRho23vsCent(0),
- fHistDeltaJetPt12vsCent(0),
- fHistDeltaJetPt13vsCent(0),
- fHistDeltaJetPt23vsCent(0),
- fHistRho1vsCent(0),
- fHistRho2vsCent(0),
- fHistRho3vsCent(0)
-{
- // Constructor
-
- for (Int_t i = 0;i<6;++i) {
- fHistRawJetPt[i] = 0;
- fHistAreavsRawPt[i] = 0;
- for (Int_t j = 0;j<4;++j) {
- fHistNEFvsPt[i][j] = 0;
- fHistZvsPt[i][j] = 0;
- fHistZchvsPt[i][j] = 0;
- fHistZemvsPt[i][j] = 0;
- fHistJetPt[i][j] = 0;
- fHistNconsvsPt[i][j] = 0;
- fHistJetPt3[i][j] = 0;
- fHistJetPt5[i][j] = 0;
- fHistJetPt7[i][j] = 0;
- fHistJetPt9[i][j] = 0;
- }
- }
-
- DefineInput(0, TChain::Class());
- DefineOutput(1, TList::Class());
-}
+ AliAnalysisTaskEmcalJet(name,kTRUE),
+ fHistRhovsCent(0),
+ fHistNjetvsCent(0)
+ {
+ for (Int_t i = 0;i<6;++i){
+ fHistJetPtvsTrackPt[i] = 0;
+ fHistRawJetPtvsTrackPt[i] = 0;
+ fHistTrackPt[i] = 0;
+ fHistEP0[i] = 0;
+ fHistEP0A[i] = 0;
+ fHistEP0C[i] = 0;
+ fHistEPAvsC[i] = 0;
+ fHistJetPtvsdEP[i] = 0;
+ fHistJetPtvsdEPBias[i] = 0;
+ fHistRhovsEP[i] = 0;
+ }
+ SetMakeGeneralHistograms(kTRUE);
+ }
//________________________________________________________________________
void AliAnalysisTaskEmcalJetSpectra::UserCreateOutputObjects()
{
- // Called once at the beginning of the analysis.
-
- AliVEventHandler* handler = AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();
- if (!handler) {
- AliError("Input handler not available!");
+ if (! fCreateHisto)
return;
+ AliAnalysisTaskEmcalJet::UserCreateOutputObjects();
+
+ fHistRhovsCent = new TH2F("RhovsCent", "RhovsCent", 100, 0.0, 100.0, 500, 0, 500);
+ fHistNjetvsCent = new TH2F("NjetvsCent", "NjetvsCent", 100, 0.0, 100.0, 100, 0, 100);
+
+ TString name;
+ TString title;
+ for (Int_t i = 0;i<6;++i){
+ name = TString(Form("JetPtvsTrackPt_%i",i));
+ title = TString(Form("Jet pT vs Leading Track pT cent bin %i",i));
+ fHistJetPtvsTrackPt[i] = new TH2F(name,title,1000,-500,500,100,0,100);
+ fOutput->Add(fHistJetPtvsTrackPt[i]);
+ name = TString(Form("RawJetPtvsTrackPt_%i",i));
+ title = TString(Form("Raw Jet pT vs Leading Track pT cent bin %i",i));
+ fHistRawJetPtvsTrackPt[i] = new TH2F(name,title,1000,-500,500,100,0,100);
+ fOutput->Add(fHistRawJetPtvsTrackPt[i]);
+ name = TString(Form("TrackPt_%i",i));
+ title = TString(Form("Track pT cent bin %i",i));
+ fHistTrackPt[i] = new TH1F(name,title,1000,0,200);
+ fOutput->Add(fHistTrackPt[i]);
+
+ name = TString(Form("EP0_%i",i));
+ title = TString(Form("EP VZero cent bin %i",i));
+ fHistEP0[i] = new TH1F(name,title,100,-TMath::Pi(),TMath::Pi());
+ fOutput->Add(fHistEP0[i]);
+ name = TString(Form("EP0A_%i",i));
+ title = TString(Form("EP VZero cent bin %i",i));
+ fHistEP0A[i] = new TH1F(name,title,100,-TMath::Pi(),TMath::Pi());
+ fOutput->Add(fHistEP0A[i]);
+ name = TString(Form("EP0C_%i",i));
+ title = TString(Form("EP VZero cent bin %i",i));
+ fHistEP0C[i] = new TH1F(name,title,100,-TMath::Pi(),TMath::Pi());
+ fOutput->Add(fHistEP0C[i]);
+ name = TString(Form("EPAvsC_%i",i));
+ title = TString(Form("EP VZero cent bin %i",i));
+ fHistEPAvsC[i] = new TH2F(name,title,100,-TMath::Pi(),TMath::Pi(),100,-TMath::Pi(),TMath::Pi());
+ fOutput->Add(fHistEPAvsC[i]);
+ name = TString(Form("JetPtvsdEP_%i",i));
+ title = TString(Form("Jet pt vs dEP cent bin %i",i));
+ fHistJetPtvsdEP[i] = new TH2F(name,title,1000,-500,500,400,-2*TMath::Pi(),2*TMath::Pi());
+ fOutput->Add(fHistJetPtvsdEP[i]);
+ name = TString(Form("JetPtvsdEPBias_%i",i));
+ title = TString(Form("Bias Jet pt vs dEP cent bin %i",i));
+ fHistJetPtvsdEPBias[i] = new TH2F(name,title,1000,-500,500,400,-2*TMath::Pi(),2*TMath::Pi());
+ fOutput->Add(fHistJetPtvsdEPBias[i]);
+ name = TString(Form("JetPtvsEP_%i",i));
+ title = TString(Form("Jet pt vs EP cent bin %i",i));
+ fHistJetPtvsEP[i] = new TH2F(name,title,1000,-500,500,400,-2*TMath::Pi(),2*TMath::Pi());
+ fOutput->Add(fHistJetPtvsEP[i]);
+ name = TString(Form("JetPtvsEPBias_%i",i));
+ title = TString(Form("Bias Jet pt vs EP cent bin %i",i));
+ fHistJetPtvsEPBias[i] = new TH2F(name,title,1000,-500,500,400,-2*TMath::Pi(),2*TMath::Pi());
+ fOutput->Add(fHistJetPtvsEPBias[i]);
+ name = TString(Form("RhovsEP_%i",i));
+ title = TString(Form("Rho vs EP cent bin %i",i));
+ fHistRhovsEP[i] = new TH2F(name,title,500,0,500,400,-2*TMath::Pi(),2*TMath::Pi());
+ fOutput->Add(fHistRhovsEP[i]);
}
- OpenFile(1);
- fOutputList = new TList();
- fOutputList->SetOwner();
-
- fHistCentrality = new TH1F("Centrality", "Centrality", 101, -1, 100);
- fHistDeltaRho12vsCent = new TH2F("DeltaRho12vsCent", "DeltaRho12vsCent", 100, 0.0, 100.0, 500,-250,250);
- fHistDeltaRho13vsCent = new TH2F("DeltaRho13vsCent", "DeltaRho13vsCent", 100, 0.0, 100.0, 500,-250,250);
- fHistDeltaRho23vsCent = new TH2F("DeltaRho23vsCent", "DeltaRho23vsCent", 100, 0.0, 100.0, 500,-250,250);
- fHistDeltaJetPt12vsCent = new TH2F("DeltaJetPt12vsCent", "DeltaJetPt12vsCent", 100, 0.0, 100.0, 500,-250,250);
- fHistDeltaJetPt13vsCent = new TH2F("DeltaJetPt13vsCent", "DeltaJetPt13vsCent", 100, 0.0, 100.0, 500,-250,250);
- fHistDeltaJetPt23vsCent = new TH2F("DeltaJetPt23vsCent", "DeltaJetPt23vsCent", 100, 0.0, 100.0, 500,-250,250);
- fHistRho1vsCent = new TH2F("Rho1vsCent", "Rho1vsCent", 100, 0.0, 100.0, 500, 0, 500);
- fHistRho2vsCent = new TH2F("Rho2vsCent", "Rho2vsCent", 100, 0.0, 100.0, 500, 0, 500);
- fHistRho3vsCent = new TH2F("Rho3vsCent", "Rho3vsCent", 100, 0.0, 100.0, 500, 0, 500);
-
- for (Int_t i = 0;i<6;++i) {
- TString name00(Form("fHistRawJetPt_%i",i));
- fHistRawJetPt[i] = new TH1F(name00,name00,250,0,500);
- fOutputList->Add(fHistRawJetPt[i]);
- TString name01(Form("fHistAreavsRawPt_%i",i));
- fHistAreavsRawPt[i] = new TH2F(name01,name01,250,0,500,100,0,1);
- fOutputList->Add(fHistAreavsRawPt[i]);
- for (Int_t j = 0;j<4;j++) {
- TString name0(Form("fHistNEFvsPt_%i_%i",i,j));
- fHistNEFvsPt[i][j] = new TH2F(name0,name0,250,-250,250,200,0,2);
- fOutputList->Add(fHistNEFvsPt[i][j]);
- TString name1(Form("fHistZvsPt_%i_%i",i,j));
- fHistZvsPt[i][j] = new TH2F(name1,name1,250,-250,250,200,0,2);
- fOutputList->Add(fHistZvsPt[i][j]);
- TString name2(Form("fHistZchvsPt_%i_%i",i,j));
- fHistZchvsPt[i][j] = new TH2F(name2,name2,250,-250,250,200,0,2);
- fOutputList->Add(fHistZchvsPt[i][j]);
- TString name3(Form("fHistZemvsPt_%i_%i",i,j));
- fHistZemvsPt[i][j] = new TH2F(name3,name3,250,-250,250,200,0,2);
- fOutputList->Add(fHistZemvsPt[i][j]);
- TString name5(Form("fHistJetPt_%i_%i",i,j));
- fHistJetPt[i][j] = new TH1F(name5,name5,250,-250,250);
- fOutputList->Add(fHistJetPt[i][j]);
- TString name6(Form("fHistNconsvsPt_%i_%i",i,j));
- fHistNconsvsPt[i][j] = new TH2F(name6,name6,250,-250,250,500,0,500);
- fOutputList->Add(fHistNconsvsPt[i][j]);
- TString name7(Form("fHistJetPt3_%i_%i",i,j));
- fHistJetPt3[i][j] = new TH1F(name7,name7,250,-250,250);
- fOutputList->Add(fHistJetPt3[i][j]);
- TString name8(Form("fHistJetPt5_%i_%i",i,j));
- fHistJetPt5[i][j] = new TH1F(name8,name8,250,-250,250);
- fOutputList->Add(fHistJetPt5[i][j]);
- TString name9(Form("fHistJetPt7_%i_%i",i,j));
- fHistJetPt7[i][j] = new TH1F(name9,name9,250,-250,250);
- fOutputList->Add(fHistJetPt7[i][j]);
- TString name10(Form("fHistJetPt9_%i_%i",i,j));
- fHistJetPt9[i][j] = new TH1F(name10,name10,250,-250,250);
- fOutputList->Add(fHistJetPt9[i][j]);
- }
- }
- fOutputList->Add(fHistCentrality);
- fOutputList->Add(fHistDeltaRho12vsCent);
- fOutputList->Add(fHistDeltaRho13vsCent);
- fOutputList->Add(fHistDeltaRho23vsCent);
- fOutputList->Add(fHistDeltaJetPt12vsCent);
- fOutputList->Add(fHistDeltaJetPt13vsCent);
- fOutputList->Add(fHistDeltaJetPt23vsCent);
- fOutputList->Add(fHistRho1vsCent);
- fOutputList->Add(fHistRho2vsCent);
- fOutputList->Add(fHistRho3vsCent);
- PostData(1, fOutputList);
+ fOutput->Add(fHistRhovsCent);
+ fOutput->Add(fHistNjetvsCent);
+
+ PostData(1, fOutput);
}
//________________________________________________________________________
+
Int_t AliAnalysisTaskEmcalJetSpectra::GetCentBin(Double_t cent) const
{
// Get centrality bin.
}
//________________________________________________________________________
-void AliAnalysisTaskEmcalJetSpectra::UserExec(Option_t *)
-{
- // Main loop, called for each event.
- // esd or aod mode
- Bool_t esdMode = kTRUE;
- if (dynamic_cast<AliAODEvent*>(InputEvent()))
- esdMode = kFALSE;
-
- if (esdMode) {
- // optimization in case autobranch loading is off
- AliAnalysisManager *am = AliAnalysisManager::GetAnalysisManager();
- if (fTracksName == "Tracks")
- am->LoadBranch("Tracks");
- }
+Float_t AliAnalysisTaskEmcalJetSpectra:: RelativePhi(Double_t mphi,Double_t vphi) const
+{
+ if (vphi < -1*TMath::Pi()) vphi += (2*TMath::Pi());
+ else if (vphi > TMath::Pi()) vphi -= (2*TMath::Pi());
+ if (mphi < -1*TMath::Pi()) mphi += (2*TMath::Pi());
+ else if (mphi > TMath::Pi()) mphi -= (2*TMath::Pi());
+ double dphi = mphi-vphi;
+ if (dphi < -1*TMath::Pi()) dphi += (2*TMath::Pi());
+ else if (dphi > TMath::Pi()) dphi -= (2*TMath::Pi());
+
+ return dphi;//dphi in [-Pi, Pi]
+}
- // get centrality
- Double_t fCent = -1;
- TList *l = InputEvent()->GetList();
- AliCentrality *centrality = InputEvent()->GetCentrality() ;
- if (centrality)
- fCent = centrality->GetCentralityPercentile("V0M");
- else
- fCent=99; // probably pp data
- if (fCent<0) {
- AliError(Form("Centrality negative: %f", fCent));
- return;
- }
+//________________________________________________________________________
+Bool_t AliAnalysisTaskEmcalJetSpectra::Run()
+{
Int_t centbin = GetCentBin(fCent);
+ //for pp analyses we will just use the first centrality bin
+ if (centbin == -1)
+ centbin = 0;
- //don't want to analyze events 90-100
- if (centbin < 0)
- return;
-
- TClonesArray *jets = 0;
- TClonesArray *tracks = 0;
-
- tracks = dynamic_cast<TClonesArray*>(l->FindObject(fTracksName));
- if (!tracks) {
- AliError(Form("Pointer to tracks %s == 0", fTracksName.Data() ));
- return;
- }
+ if (!fTracks)
+ return kTRUE;
- jets = dynamic_cast<TClonesArray*>(l->FindObject(fJetsName));
- if (!jets) {
- AliError(Form("Pointer to tracks %s == 0", fTracksName.Data() ));
- return;
+ const Int_t nTrack = fTracks->GetEntriesFast();
+ for (int i = 0;i<nTrack;i++){
+ AliVParticle *track = static_cast<AliVParticle*>(fTracks->At(i));
+ if (! track)
+ continue;
+ fHistTrackPt[centbin]->Fill(track->Pt());
}
- Double_t rho1 = 0;
- TParameter<Double_t> *Rho1Param = dynamic_cast<TParameter<Double_t>*>(InputEvent()->FindListObject(fRhos1Name));
- if (Rho1Param)
- rho1 = Rho1Param->GetVal();
-
- Double_t rho2 = 0;
- TParameter<Double_t> *Rho2Param = dynamic_cast<TParameter<Double_t>*>(InputEvent()->FindListObject(fRhos2Name));
- if (Rho2Param)
- rho2 = Rho2Param->GetVal();
+ fHistEP0[centbin]->Fill(fEPV0);
+ fHistEP0A[centbin]->Fill(fEPV0A);
+ fHistEP0C[centbin]->Fill(fEPV0C);
+ fHistEPAvsC[centbin]->Fill(fEPV0A,fEPV0C);
+ TString fRhoScaledName = fRhoName;
+ fRhoScaledName.Append("_Scaled");
+ fRho = GetRhoFromEvent(fRhoScaledName);
+ fRhoVal = fRho->GetVal();
+ fHistRhovsCent->Fill(fCent,fRhoVal);
+ fHistRhovsEP[centbin]->Fill(fRhoVal,fEPV0);
+ const Int_t Njets = fJets->GetEntriesFast();
- Double_t rho3 = 0;
- TParameter<Double_t> *Rho3Param = dynamic_cast<TParameter<Double_t>*>(InputEvent()->FindListObject(fRhos3Name));
- if (Rho3Param)
- rho3 = Rho3Param->GetVal();
-
- fHistRho1vsCent->Fill(fCent,rho1);
- fHistRho2vsCent->Fill(fCent,rho2);
- fHistRho3vsCent->Fill(fCent,rho3);
-
- if (( rho1>0 ) && ( rho2>0 ))
- fHistDeltaRho12vsCent->Fill(fCent,rho1-rho2);
- if (( rho1>0 ) && ( rho3>0 ))
- fHistDeltaRho13vsCent->Fill(fCent,rho1-rho3);
- if (( rho2>0 ) && ( rho3>0 ))
- fHistDeltaRho23vsCent->Fill(fCent,rho2-rho3);
- fHistCentrality->Fill(fCent);
-
- Double_t lJetPt = -500;
- Double_t lJetPtun = -500;
- const Int_t Njets = jets->GetEntries();
Int_t NjetAcc = 0;
-
for (Int_t iJets = 0; iJets < Njets; ++iJets) {
- AliEmcalJet *jet = static_cast<AliEmcalJet*>(jets->At(iJets));
- if (!jet)
- continue;
- if ((jet->Phi()<fPhimin)||(jet->Phi()>fPhimax))
- continue;
- if ((jet->Eta()<fEtamin)||(jet->Eta()>fEtamax))
- continue;
- fHistAreavsRawPt[centbin]->Fill(jet->Pt(),jet->Area());
- if (jet->Area()<fAreacut)
- continue;
- //prevents 0 area jets from sneaking by when area cut == 0
- if (jet->Area()==0)
- continue;
- if (jet->Pt()==0)
- continue;
- if (jet->MaxTrackPt()>100)
- continue;
- fHistRawJetPt[centbin]->Fill(jet->Pt());
-
- NjetAcc++;
- Double_t Z;
- Double_t jetPt1 = -500;
- Double_t jetPt2 = -500;
- Double_t jetPt3 = -500;
- jetPt1 = jet->Pt()-jet->Area()*rho1;
- jetPt2 = jet->Pt()-jet->Area()*rho2;
- jetPt3 = jet->Pt()-jet->Area()*rho3;
- if (( rho1>0 ) && ( rho2>0 ))
- fHistDeltaJetPt12vsCent->Fill(fCent,jetPt1-jetPt2);
- if (( rho1>0 ) && ( rho3>0 ))
- fHistDeltaJetPt13vsCent->Fill(fCent,jetPt1-jetPt3);
- if (( rho2>0 ) && ( rho3>0 ))
- fHistDeltaJetPt23vsCent->Fill(fCent,jetPt2-jetPt3);
-
- if (lJetPt < jetPt2) {
- lJetPt= jetPt2;
- lJetPtun = jet->Pt();
- }
-
- Z = jet->MaxTrackPt();
-
- fHistNEFvsPt[centbin][0]->Fill(jet->Pt(),jet->NEF());
- fHistZvsPt[centbin][0]->Fill(jet->Pt(),Z/jet->Pt());
- fHistZchvsPt[centbin][0]->Fill(jet->Pt(),jet->MaxTrackPt()/jet->Pt());
- fHistZemvsPt[centbin][0]->Fill(jet->Pt(),jet->MaxClusterPt()/jet->Pt());
- fHistJetPt[centbin][0]->Fill(jet->Pt());
- fHistNconsvsPt[centbin][0]->Fill(jet->Pt(),jet->N());
- if (jet->MaxTrackPt()>3)
- fHistJetPt3[centbin][0]->Fill(jet->Pt());
- if (jet->MaxTrackPt()>5)
- fHistJetPt5[centbin][0]->Fill(jet->Pt());
- if (jet->MaxTrackPt()>7)
- fHistJetPt7[centbin][0]->Fill(jet->Pt());
- if (jet->MaxTrackPt()>9)
- fHistJetPt9[centbin][0]->Fill(jet->Pt());
-
- if (jetPt1!=0){
- fHistNEFvsPt[centbin][1]->Fill(jetPt1,jet->NEF());
- fHistZvsPt[centbin][1]->Fill(jetPt1,Z/jetPt1);
- fHistZchvsPt[centbin][1]->Fill(jetPt1,jet->MaxTrackPt()/jetPt1);
- fHistZemvsPt[centbin][1]->Fill(jetPt1,jet->MaxClusterPt()/jetPt1);
- fHistJetPt[centbin][1]->Fill(jetPt1);
- fHistNconsvsPt[centbin][1]->Fill(jetPt1,jet->N());
- if (jet->MaxTrackPt()>3)
- fHistJetPt3[centbin][1]->Fill(jetPt1);
- if (jet->MaxTrackPt()>5)
- fHistJetPt5[centbin][1]->Fill(jetPt1);
- if (jet->MaxTrackPt()>7)
- fHistJetPt7[centbin][1]->Fill(jetPt1);
- if (jet->MaxTrackPt()>9)
- fHistJetPt9[centbin][1]->Fill(jetPt1);}
-
- if (jetPt2!=0){
- fHistNEFvsPt[centbin][2]->Fill(jetPt2,jet->NEF());
- fHistZvsPt[centbin][2]->Fill(jetPt2,Z/jetPt2);
- fHistZchvsPt[centbin][2]->Fill(jetPt2,jet->MaxTrackPt()/jetPt2);
- fHistZemvsPt[centbin][2]->Fill(jetPt2,jet->MaxClusterPt()/jetPt2);
- fHistJetPt[centbin][2]->Fill(jetPt2);
- fHistNconsvsPt[centbin][2]->Fill(jetPt2,jet->N());
- if (jet->MaxTrackPt()>3)
- fHistJetPt3[centbin][2]->Fill(jetPt2);
- if (jet->MaxTrackPt()>5)
- fHistJetPt5[centbin][2]->Fill(jetPt2);
- if (jet->MaxTrackPt()>7)
- fHistJetPt7[centbin][2]->Fill(jetPt2);
- if (jet->MaxTrackPt()>9)
- fHistJetPt9[centbin][2]->Fill(jetPt2);}
-
- if (jetPt3!=0){
- fHistNEFvsPt[centbin][3]->Fill(jetPt3,jet->NEF());
- fHistZvsPt[centbin][3]->Fill(jetPt3,Z/jetPt3);
- fHistZchvsPt[centbin][3]->Fill(jetPt3,jet->MaxTrackPt()/jetPt3);
- fHistZemvsPt[centbin][3]->Fill(jetPt3,jet->MaxClusterPt()/jetPt3);
- fHistJetPt[centbin][3]->Fill(jetPt3);
- fHistNconsvsPt[centbin][3]->Fill(jetPt3,jet->N());
- if (jet->MaxTrackPt()>3)
- fHistJetPt3[centbin][3]->Fill(jetPt3);
- if (jet->MaxTrackPt()>5)
- fHistJetPt5[centbin][3]->Fill(jetPt3);
- if (jet->MaxTrackPt()>7)
- fHistJetPt7[centbin][3]->Fill(jetPt3);
- if (jet->MaxTrackPt()>9)
- fHistJetPt9[centbin][3]->Fill(jetPt3);}
+ AliEmcalJet *jet = static_cast<AliEmcalJet*>(fJets->At(iJets));
+ if (!jet)
+ continue;
+ if (jet->Area()==0)
+ continue;
+ if (jet->Pt()<0.1)
+ continue;
+ if (jet->MaxTrackPt()>100)
+ continue;
+ if (! AcceptJet(jet))
+ continue;
+ // jets.push_back(jet);
+ NjetAcc++;
+ Double_t jetPt = -500;
+ jetPt = jet->Pt()-jet->Area()*fRhoVal;
+ fHistJetPtvsTrackPt[centbin]->Fill(jetPt,jet->MaxTrackPt());
+ fHistRawJetPtvsTrackPt[centbin]->Fill(jet->Pt(),jet->MaxTrackPt());
+ fHistJetPtvsdEP[centbin]->Fill(jetPt,RelativePhi((fEPV0+TMath::Pi()),jet->Phi()));
+ fHistJetPtvsEP[centbin]->Fill(jetPt,fEPV0);
+ if (jet->MaxTrackPt()>5.0){
+ fHistJetPtvsdEPBias[centbin]->Fill(jetPt,RelativePhi((fEPV0+TMath::Pi()),jet->Phi()));
+ fHistJetPtvsEPBias[centbin]->Fill(jetPt,fEPV0);
+ }
}
- PostData(1, fOutputList);
+ fHistNjetvsCent->Fill(fCent,NjetAcc);
+ return kTRUE;
}
-//________________________________________________________________________
-void AliAnalysisTaskEmcalJetSpectra::Terminate(Option_t *)
-{
- // Called once at the end of the analysis.
-}
+
+