string ( REPLACE ".cxx" ".h" EXPORT "${SRCS}" )
-set ( EINCLUDE ANALYSIS PWG4/totEt STEER/STEERBase)
+set ( EINCLUDE ANALYSIS PWG0 PWG4/totEt STEER/STEERBase)
#include "AliAnalysisEtCommon.h"
#include "AliCentrality.h"
#include "AliLog.h"
+#include "AliPWG0Helper.h"
+//class AliPWG0Helper;
+//#include "$ALICE_ROOT/PWG0/AliPWG0Helper.h"
using namespace std;
AliFatal("ERROR: MC Event does not exist");
return 0;
}
+
// Let's play with the stack!
AliStack *stack = mcEvent->Stack();
if(fSimTotEt>0.0)FillHisto1D("SimTotEt",fSimTotEt,1.0);
if(fSimHadEt>0.0)FillHisto1D("SimHadEt",fSimHadEt,1.0);
if(fSimPiKPEt>0.0)FillHisto1D("SimPiKPEt",fSimPiKPEt,1.0);
+ if(AliPWG0Helper::GetEventProcessType(mcEvent->Header()) == AliPWG0Helper::kND){
+ FillHisto1D("SimHadEtND",fSimHadEt,1.0);
+ FillHisto1D("SimTotEtND",fSimHadEt,1.0);
+ FillHisto1D("NEventsND",0.5,1);
+ }
+ if(AliPWG0Helper::GetEventProcessType(mcEvent->Header()) == AliPWG0Helper::kSD){
+ FillHisto1D("SimHadEtSD",fSimHadEt,1.0);
+ FillHisto1D("SimTotEtSD",fSimHadEt,1.0);
+ FillHisto1D("NEventsSD",0.5,1);
+ }
+ if(AliPWG0Helper::GetEventProcessType(mcEvent->Header()) == AliPWG0Helper::kDD){
+ FillHisto1D("SimHadEtDD",fSimHadEt,1.0);
+ FillHisto1D("SimTotEtDD",fSimHadEt,1.0);
+ FillHisto1D("NEventsDD",0.5,1);
+ }
if(fCentBin != -1){//if we have Pb+Pb and a centrality bin was found
if(fSimTotEt>0.0) FillHisto1D(Form("SimTotEtCB%i",fCentBin),fSimTotEt,1.0);
if(fSimHadEt>0.0) FillHisto1D(Form("SimHadEtCB%i",fCentBin),fSimHadEt,1.0);
CreateHisto1D("SimPiKPEt","Simulated #pi,K,p E_{T}","Simulated #pi,K,p E_{T}","Number of events",nbinsEt,minEt,maxEt);
CreateHisto1D("SimTotEt","Simulated Total E_{T}","Simulated Total E_{T}","Number of events",nbinsEt*4,minEt,maxEt);
CreateHisto1D("SimHadEt","Simulated Hadronic E_{T}","Simulated Hadronic E_{T}","Number of events",nbinsEt*4,minEt,maxEt);
+ CreateHisto1D("SimTotEtND","Simulated Total E_{T}","Simulated Total E_{T} for non-diffractive events","Number of events",nbinsEt*4,minEt,maxEt);
+ CreateHisto1D("SimHadEtND","Simulated Hadronic E_{T}","Simulated Hadronic E_{T} for non-diffractive events","Number of events",nbinsEt*4,minEt,maxEt);
+ CreateHisto1D("SimTotEtSD","Simulated Total E_{T}","Simulated Total E_{T} for singly diffractive events","Number of events",nbinsEt*4,minEt,maxEt);
+ CreateHisto1D("SimHadEtSD","Simulated Hadronic E_{T}","Simulated Hadronic E_{T} for singly diffractive events","Number of events",nbinsEt*4,minEt,maxEt);
+ CreateHisto1D("SimTotEtDD","Simulated Total E_{T}","Simulated Total E_{T} for doubly diffractive events","Number of events",nbinsEt*4,minEt,maxEt);
+ CreateHisto1D("SimHadEtDD","Simulated Hadronic E_{T}","Simulated Hadronic E_{T} for doubly diffractive events","Number of events",nbinsEt*4,minEt,maxEt);
if(fDataSet==20100){
Int_t width = 5;
if(fNCentBins<21) width = 10;
delete sEMCAL;
delete sPHOS;
CreateIntHisto1D("NEvents","Number of events","number of events","Number of events",1,0,1);
+ CreateIntHisto1D("NEventsSD","Number of events","number of singly diffractive events","Number of events",1,0,1);
+ CreateIntHisto1D("NEventsDD","Number of events","number of doubly diffractive events","Number of events",1,0,1);
+ CreateIntHisto1D("NEventsND","Number of events","number of non-diffractive events","Number of events",1,0,1);
CreateResolutionPtHisto2D("presolutionTPC","p resolution","p^{rec}","(p^{sim}-p^{rec})/p^{rec}");
CreateResolutionPtHisto2D("pTresolutionTPC","p_{T} resolution","p_{T}^{rec}","(p_{T}^{sim}-p_{T}^{rec})/p_{T}^{rec}");
CreateResolutionPtHisto2D("ETresolutionTPC","E_{T} resolution","E_{T}^{rec}","(E_{T}^{sim}-E_{T}^{rec})/E_{T}^{rec}");
#include "AliAnalysisHadEt.h"
#include "AliCentrality.h"
#include "AliLog.h"
+#include "AliPWG0Helper.h"
using namespace std;
delete fCorrections;
}
-Int_t AliAnalysisHadEtReconstructed::AnalyseEvent(AliVEvent* ev)
+Int_t AliAnalysisHadEtReconstructed::AnalyseEvent(AliVEvent* ev, Int_t eventtype)
{ // analyse ESD event
ResetEventValues();
if(!ev){
}
delete list;
}
+ Int_t nondiff = (Int_t) AliPWG0Helper::kND;
+ Int_t doublediff = (Int_t) AliPWG0Helper::kDD;
+ Int_t singlediff = (Int_t) AliPWG0Helper::kSD;
+ if(eventtype == nondiff && fGoodEvent){
+ FillHisto1D("RecoHadEtFullAcceptanceTPCND",GetCorrectedHadEtFullAcceptanceTPC(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceTPCND",GetCorrectedTotEtFullAcceptanceTPC(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceITSND",GetCorrectedHadEtFullAcceptanceITS(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceITSND",GetCorrectedTotEtFullAcceptanceITS(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceTPCNoPIDND",GetCorrectedHadEtFullAcceptanceTPCNoPID(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceTPCNoPIDND",GetCorrectedTotEtFullAcceptanceTPCNoPID(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceITSNoPIDND",GetCorrectedHadEtFullAcceptanceITSNoPID(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceITSNoPIDND",GetCorrectedTotEtFullAcceptanceITSNoPID(),1.0);
+ }
+ if(eventtype == doublediff){
+ FillHisto1D("RecoHadEtFullAcceptanceTPCDD",GetCorrectedHadEtFullAcceptanceTPC(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceTPCDD",GetCorrectedTotEtFullAcceptanceTPC(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceITSDD",GetCorrectedHadEtFullAcceptanceITS(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceITSDD",GetCorrectedTotEtFullAcceptanceITS(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceTPCNoPIDDD",GetCorrectedHadEtFullAcceptanceTPCNoPID(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceTPCNoPIDDD",GetCorrectedTotEtFullAcceptanceTPCNoPID(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceITSNoPIDDD",GetCorrectedHadEtFullAcceptanceITSNoPID(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceITSNoPIDDD",GetCorrectedTotEtFullAcceptanceITSNoPID(),1.0);
+ }
+ if(eventtype == singlediff){
+ FillHisto1D("RecoHadEtFullAcceptanceTPCSD",GetCorrectedHadEtFullAcceptanceTPC(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceTPCSD",GetCorrectedTotEtFullAcceptanceTPC(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceITSSD",GetCorrectedHadEtFullAcceptanceITS(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceITSSD",GetCorrectedTotEtFullAcceptanceITS(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceTPCNoPIDSD",GetCorrectedHadEtFullAcceptanceTPCNoPID(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceTPCNoPIDSD",GetCorrectedTotEtFullAcceptanceTPCNoPID(),1.0);
+ FillHisto1D("RecoHadEtFullAcceptanceITSNoPIDSD",GetCorrectedHadEtFullAcceptanceITSNoPID(),1.0);
+ FillHisto1D("RecoTotEtFullAcceptanceITSNoPIDSD",GetCorrectedTotEtFullAcceptanceITSNoPID(),1.0);
+ }
if(GetCorrectedHadEtFullAcceptanceTPC()>0.0 && fGoodEvent)FillHisto1D("RecoHadEtFullAcceptanceTPC",GetCorrectedHadEtFullAcceptanceTPC(),1.0);
if(GetCorrectedTotEtFullAcceptanceTPC()>0.0 && fGoodEvent)FillHisto1D("RecoTotEtFullAcceptanceTPC",GetCorrectedTotEtFullAcceptanceTPC(),1.0);
if(GetCorrectedHadEtFullAcceptanceTPCAssumingPion()>0.0 && fGoodEvent)FillHisto1D("RecoHadEtFullAcceptanceTPCAssumingPion",GetCorrectedHadEtFullAcceptanceTPCAssumingPion(),1.0);
snprintf(histotitle,200,"Reconstructed %s with %s acceptance for p_{T}>%s GeV/c%s",etstring->Data(),acceptance->Data(),ptstring->Data(),partidstring->Data());
snprintf(xtitle,50,"Reconstructed %s",etstring->Data());
CreateHisto1D(histoname,histotitle,xtitle,ytitle->Data(),nbinsEt*2,minEt,maxEt);
+ if(type==0){//full acceptance only
+ snprintf(xtitle,50,"Reconstructed %s",etstring->Data());
+
+ snprintf(histoname,200,"Reco%s%sAcceptance%s%sND",et->Data(),acceptance->Data(),detector->Data(),partid->Data());
+ snprintf(histotitle,200,"Reconstructed non-diffractive events %s with %s acceptance for p_{T}>%s GeV/c%s",etstring->Data(),acceptance->Data(),ptstring->Data(),partidstring->Data());
+ CreateHisto1D(histoname,histotitle,xtitle,ytitle->Data(),nbinsEt*2,minEt,maxEt);
+ snprintf(histoname,200,"Reco%s%sAcceptance%s%sDD",et->Data(),acceptance->Data(),detector->Data(),partid->Data());
+ snprintf(histotitle,200,"Reconstructed doubly-diffractive events %s with %s acceptance for p_{T}>%s GeV/c%s",etstring->Data(),acceptance->Data(),ptstring->Data(),partidstring->Data());
+ CreateHisto1D(histoname,histotitle,xtitle,ytitle->Data(),nbinsEt*2,minEt,maxEt);
+ snprintf(histoname,200,"Reco%s%sAcceptance%s%sSD",et->Data(),acceptance->Data(),detector->Data(),partid->Data());
+ snprintf(histotitle,200,"Reconstructed singly-diffractive events %s with %s acceptance for p_{T}>%s GeV/c%s",etstring->Data(),acceptance->Data(),ptstring->Data(),partidstring->Data());
+ CreateHisto1D(histoname,histotitle,xtitle,ytitle->Data(),nbinsEt*2,minEt,maxEt);
+ }
if(fDataSet==20100 && type ==0 &&pid==1){//If this is Pb+Pb and full acceptance with pid
Int_t width = 5;
if(fNCentBins<21) width = 10;
#define ALIANALYSISHADETRECONSTRUCTED_H
#include "AliAnalysisHadEt.h"
+//#include "PWG0/AliPWG0Helper.h"
class AliVParticle;
class AliAnalysisHadEtCorrections;
AliAnalysisHadEtReconstructed();
virtual ~AliAnalysisHadEtReconstructed();
- virtual Int_t AnalyseEvent(AliVEvent* event);
+ virtual Int_t AnalyseEvent(AliVEvent* event, Int_t eventtype);
+ virtual Int_t AnalyseEvent(AliVEvent* event){return AnalyseEvent(event,-1);}
//the "Corrected" variables are only corrected for the track-by-track fCorrections
Float_t GetCorrectedHadEtFullAcceptanceTPC() const {return fCorrHadEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPC;}
#include "AliAnalysisTaskHadEt.h"
#include "AliAnalysisHadEtReconstructed.h"
#include "AliAnalysisHadEtMonteCarlo.h"
+#include "AliPWG0Helper.h"
#include <iostream>
// fEsdtrackCutsITS->SetName("fEsdTrackCutsITS");
// }
if(fRecAnalysis->DataSet()==2010 || fRecAnalysis->DataSet()==20111||fRecAnalysis->DataSet()==2009){
+ AliAnalysisTaskSE:: SelectCollisionCandidates(AliVEvent::kINT7 ) ;
if(fRecAnalysis->DataSet()==2010)cout<<"Setting track cuts for the 2010 p+p collisions at 7 TeV"<<endl;
else{
if(fRecAnalysis->DataSet()==2009){cout<<"Setting track cuts for the 2010 p+p collisions at 900 GeV"<<endl;}
Printf("ERROR: Could not retrieve event");
return;
}
-//cout<<"AliAnalysisHadEtReconstructed 90"<<endl;
+//cout<<"AliAnalysisTaskHadEt 165"<<endl;
Int_t res = CheckPhysicsSelection(fESDEvent->GetRunNumber()); // Check if the physics selection is valid for this run
//cout<<"New Event"<<endl;
- fRecAnalysis->AnalyseEvent(fESDEvent);
-
AliMCEvent* mcEvent = MCEvent();
+ Int_t eventtype = (Int_t) AliPWG0Helper::GetEventProcessType(mcEvent->Header());
+ fRecAnalysis->AnalyseEvent(fESDEvent,eventtype);
+
// if (!mcEvent) {
// Printf("ERROR: Could not retrieve MC event");
// }
class TList;\r
\r
#include "AliAnalysisTaskTransverseEnergy.h"\r
-\r
+class AliPWG0Helper;\r
\r
class AliAnalysisTaskHadEt : public AliAnalysisTaskTransverseEnergy {\r
public:\r
#include "AliPhysicsSelection.h"
#include "AliCentrality.h"
#include "AliESDEvent.h"
+
//_________________________________________________________________________
// Utility Class for transverse energy studies
// Base class for Et tasks
#include "TH2F.h"
#include <iostream>
+
ClassImp(AliAnalysisTaskTransverseEnergy)
AliAnalysisTaskTransverseEnergy::AliAnalysisTaskTransverseEnergy(const char* name, Bool_t isMc) :