#include "AliAnalysisHadEtCorrections.h"
#include "TFile.h"
#include "TString.h"
+#include "AliAnalysisEtCommon.h"
+#include "AliAnalysisHadEt.h"
using namespace std;
AliAnalysisHadEt()
,fCorrections(0)
,fConfigFile("ConfigHadEtAnalysis.C")
- ,fCorrTotEtFullAcceptanceTPC(0)
- ,fCorrTotEtFullAcceptanceITS(0)
- ,fCorrHadEtFullAcceptanceTPC(0)
- ,fCorrHadEtFullAcceptanceITS(0)
- ,fCorrTotEtEMCALAcceptanceTPC(0)
- ,fCorrTotEtEMCALAcceptanceITS(0)
- ,fCorrHadEtEMCALAcceptanceTPC(0)
- ,fCorrHadEtEMCALAcceptanceITS(0)
- ,fCorrTotEtPHOSAcceptanceTPC(0)
- ,fCorrTotEtPHOSAcceptanceITS(0)
- ,fCorrHadEtPHOSAcceptanceTPC(0)
- ,fCorrHadEtPHOSAcceptanceITS(0)
- ,fCorrectedHadEtFullAcceptanceTPCNoPID(0)
- ,fCorrectedHadEtFullAcceptanceITSNoPID(0)
- ,fCorrectedHadEtEMCALAcceptanceTPCNoPID(0)
- ,fCorrectedHadEtEMCALAcceptanceITSNoPID(0)
- ,fCorrectedHadEtPHOSAcceptanceTPCNoPID(0)
- ,fCorrectedHadEtPHOSAcceptanceITSNoPID(0)
- ,fCorrectedHadEtFullAcceptanceTPC(0)
- ,fCorrectedHadEtFullAcceptanceITS(0)
- ,fCorrectedHadEtEMCALAcceptanceTPC(0)
- ,fCorrectedHadEtEMCALAcceptanceITS(0)
- ,fCorrectedHadEtPHOSAcceptanceTPC(0)
- ,fCorrectedHadEtPHOSAcceptanceITS(0)
- ,fRawEtFullAcceptanceTPC(0)
- ,fRawEtFullAcceptanceITS(0)
- ,fRawEtEMCALAcceptanceTPC(0)
- ,fRawEtEMCALAcceptanceITS(0)
- ,fRawEtPHOSAcceptanceTPC(0)
- ,fRawEtPHOSAcceptanceITS(0)
- ,fRawEtFullAcceptanceTPCNoPID(0)
- ,fRawEtFullAcceptanceITSNoPID(0)
- ,fRawEtEMCALAcceptanceTPCNoPID(0)
- ,fRawEtEMCALAcceptanceITSNoPID(0)
- ,fRawEtPHOSAcceptanceTPCNoPID(0)
- ,fRawEtPHOSAcceptanceITSNoPID(0)
+ ,fCorrTotEtFullAcceptanceTPC(0)
+ ,fCorrTotEtFullAcceptanceITS(0)
+ ,fCorrHadEtFullAcceptanceTPC(0)
+ ,fCorrHadEtFullAcceptanceITS(0)
+ ,fCorrTotEtEMCALAcceptanceTPC(0)
+ ,fCorrTotEtEMCALAcceptanceITS(0)
+ ,fCorrHadEtEMCALAcceptanceTPC(0)
+ ,fCorrHadEtEMCALAcceptanceITS(0)
+ ,fCorrTotEtPHOSAcceptanceTPC(0)
+ ,fCorrTotEtPHOSAcceptanceITS(0)
+ ,fCorrHadEtPHOSAcceptanceTPC(0)
+ ,fCorrHadEtPHOSAcceptanceITS(0)
+ ,fCorrectedHadEtFullAcceptanceTPCNoPID(0)
+ ,fCorrectedHadEtFullAcceptanceITSNoPID(0)
+ ,fCorrectedHadEtEMCALAcceptanceTPCNoPID(0)
+ ,fCorrectedHadEtEMCALAcceptanceITSNoPID(0)
+ ,fCorrectedHadEtPHOSAcceptanceTPCNoPID(0)
+ ,fCorrectedHadEtPHOSAcceptanceITSNoPID(0)
+ ,fCorrectedHadEtFullAcceptanceTPC(0)
+ ,fCorrectedHadEtFullAcceptanceITS(0)
+ ,fCorrectedHadEtEMCALAcceptanceTPC(0)
+ ,fCorrectedHadEtEMCALAcceptanceITS(0)
+ ,fCorrectedHadEtPHOSAcceptanceTPC(0)
+ ,fCorrectedHadEtPHOSAcceptanceITS(0)
+ ,fRawEtFullAcceptanceTPC(0)
+ ,fRawEtFullAcceptanceITS(0)
+ ,fRawEtEMCALAcceptanceTPC(0)
+ ,fRawEtEMCALAcceptanceITS(0)
+ ,fRawEtPHOSAcceptanceTPC(0)
+ ,fRawEtPHOSAcceptanceITS(0)
+ ,fRawEtFullAcceptanceTPCNoPID(0)
+ ,fRawEtFullAcceptanceITSNoPID(0)
+ ,fRawEtEMCALAcceptanceTPCNoPID(0)
+ ,fRawEtEMCALAcceptanceITSNoPID(0)
+ ,fRawEtPHOSAcceptanceTPCNoPID(0)
+ ,fRawEtPHOSAcceptanceITSNoPID(0)
{
-
}
AliAnalysisHadEtReconstructed::~AliAnalysisHadEtReconstructed()
//for PID
AliESDpid *pID = new AliESDpid();
pID->MakePID(realEvent);
-
TString *strTPC = new TString("TPC");
TString *strITS = new TString("ITS");
TString *strTPCITS = new TString("TPCITS");
- bool isTPC = false;
for(Int_t cutset=0;cutset<2;cutset++){
+ bool isTPC = false;
TString *cutName;
TObjArray* list;
switch(cutset){
case 0:
- cutName = strTPC;
- list = fEsdtrackCutsTPC->GetAcceptedTracks(realEvent);
+ cutName = strTPCITS;
+ list = fEsdtrackCutsITSTPC->GetAcceptedTracks(realEvent);
isTPC = true;
break;
case 1:
list = fEsdtrackCutsITS->GetAcceptedTracks(realEvent);
break;
case 2:
- cutName = strTPCITS;
- list = fEsdtrackCutsITSTPC->GetAcceptedTracks(realEvent);
+ cutName = strTPC;
+ list = fEsdtrackCutsTPC->GetAcceptedTracks(realEvent);
break;
default:
cerr<<"Error: cannot fill histograms!"<<endl;
return -1;
}
Int_t nGoodTracks = list->GetEntries();
- //cout<<nGoodTracks<<" "<<cutName->Data()<<" tracks"<<endl;
for (Int_t iTrack = 0; iTrack < nGoodTracks; iTrack++)
{
else{
if(TMath::Abs(track->Eta())>fCorrections->GetEtaCut()) continue;
Float_t nSigmaPion,nSigmaProton,nSigmaKaon,nSigmaElectron;
-
if(cutset!=1){
nSigmaPion = TMath::Abs(pID->NumberOfSigmasTPC(track,AliPID::kPion));
nSigmaProton = TMath::Abs(pID->NumberOfSigmasTPC(track,AliPID::kProton));
bool isKaon = (nSigmaPion>3.0 && nSigmaProton>2.0 && nSigmaKaon<2.0);
bool isProton = (nSigmaPion>3.0 && nSigmaProton<2.0 && nSigmaKaon>2.0);
- //bool IsElectron = false;
- bool unidentified = (!isProton && !isKaon && !isElectron);
+ bool unidentified = (!isProton && !isKaon && !isElectron && !isPion);
Float_t dEdx = track->GetTPCsignal();
if(cutset==1) dEdx = track->GetITSsignal();
FillHisto2D(Form("dEdxDataAll%s",cutName->Data()),track->P(),dEdx,1.0);
bool inPHOS = IsInPHOS(track);
bool inEMCAL = IsInEMCAL(track);
- //if(!(fCorrections->GetEfficiencyPionTPC())) cerr<<"Uh-oh! No histogram!"<<endl;
Float_t corrBkgd=0.0;
Float_t corrNotID=0.0;
- Float_t corrNoID = fCorrections->GetNotIDCorrectionNoPID(track->Pt());
+ Float_t corrNoID=0.0;// = fCorrections->GetNotIDCorrectionNoPID(track->Pt());
Float_t corrEff = 0.0;
Float_t corrEffNoID = 0.0;
if(cutset==0){//TPC
corrBkgd = fCorrections->GetBackgroundCorrectionTPC(track->Pt());
corrEffNoID = fCorrections->GetTPCEfficiencyCorrectionHadron(track->Pt());
- corrNotID = fCorrections->GetNotIDCorrectionTPC(track->Pt());
+ corrNotID = fCorrections->GetNotIDConstCorrectionTPC();
+ corrNoID = fCorrections->GetNotIDConstCorrectionTPCNoID();
}
if(cutset==1){//ITS
corrBkgd = fCorrections->GetBackgroundCorrectionITS(track->Pt());
- //corrEffNoID = fCorrections->GetITSEfficiencyCorrectionHadron(track->Pt());
- corrNotID = fCorrections->GetNotIDCorrectionITS(track->Pt());
+ corrEffNoID = fCorrections->GetITSEfficiencyCorrectionHadron(track->Pt());
+ corrNotID = fCorrections->GetNotIDConstCorrectionITS();
+ corrNoID = fCorrections->GetNotIDConstCorrectionITSNoID();
}
Float_t et = 0.0;
- Float_t etNoID = Et(track->P(),track->Theta(),fPiPlusCode,track->Charge());
+ Float_t etNoID = Et(track->P(),track->Theta(),fgPiPlusCode,track->Charge());
Float_t etpartialcorrected = 0.0;
Float_t etpartialcorrectedNoID = corrNoID*corrBkgd*corrEffNoID*etNoID;
FillHisto2D(Form("EtDataRaw%sNoID",cutName->Data()),track->Pt(),track->Eta(),etpartialcorrectedNoID);
if(isPion){
FillHisto2D(Form("dEdxDataPion%s",cutName->Data()),track->P(),dEdx,1.0);
- et = Et(track->P(),track->Theta(),fPiPlusCode,track->Charge());
+ et = Et(track->P(),track->Theta(),fgPiPlusCode,track->Charge());
if(cutset==0){corrEff = fCorrections->GetTPCEfficiencyCorrectionPion(track->Pt());}
//else{corrEff = fCorrections->GetITSEfficiencyCorrectionPion(track->Pt());}
- etpartialcorrected = et*corrBkgd*corrEff;
+ etpartialcorrected = et*corrBkgd*corrEff*corrNotID;
if(track->Charge()>0.0){
FillHisto2D(Form("EtDataRaw%sPiPlus",cutName->Data()),track->Pt(),track->Eta(),et);
}
if(isKaon){
FillHisto2D(Form("dEdxDataKaon%s",cutName->Data()),track->P(),dEdx,1.0);
- et = Et(track->P(),track->Theta(),fKPlusCode,track->Charge());
+ et = Et(track->P(),track->Theta(),fgKPlusCode,track->Charge());
if(cutset==0){corrEff = fCorrections->GetTPCEfficiencyCorrectionKaon(track->Pt());}
//else{corrEff = fCorrections->GetITSEfficiencyCorrectionKaon(track->Pt());}
- etpartialcorrected = et*corrBkgd*corrEff;
+ etpartialcorrected = et*corrBkgd*corrEff*corrNotID;
if(track->Charge()>0.0){
FillHisto2D(Form("EtDataRaw%sKPlus",cutName->Data()),track->Pt(),track->Eta(),et);
}
if(isProton){
FillHisto2D(Form("dEdxDataProton%s",cutName->Data()),track->P(),dEdx,1.0);
- et = Et(track->P(),track->Theta(),fProtonCode,track->Charge());
+ et = Et(track->P(),track->Theta(),fgProtonCode,track->Charge());
if(cutset==0){corrEff = fCorrections->GetTPCEfficiencyCorrectionProton(track->Pt());}
//else{corrEff = fCorrections->GetITSEfficiencyCorrectionProton(track->Pt());}
- etpartialcorrected = et*corrBkgd*corrEff;
+ etpartialcorrected = et*corrBkgd*corrEff*corrNotID;
if(track->Charge()>0.0){
FillHisto2D(Form("EtDataRaw%sProton",cutName->Data()),track->Pt(),track->Eta(),et);
}
if(isElectron){
FillHisto2D(Form("dEdxDataProton%s",cutName->Data()),track->P(),dEdx,1.0);
- //et = Et(track->P(),track->Theta(),fPiPlusCode,track->Charge());
+ //et = Et(track->P(),track->Theta(),fgPiPlusCode,track->Charge());
}
if(unidentified){
+ //if(!isPion)
FillHisto2D(Form("dEdxDataUnidentified%s",cutName->Data()),track->P(),dEdx,1.0);
- et = Et(track->P(),track->Theta(),fPiPlusCode,track->Charge());
+ et = Et(track->P(),track->Theta(),fgPiPlusCode,track->Charge());
etpartialcorrected = et*corrBkgd*corrEffNoID*corrNotID;
+ //if(!isPion)
FillHisto2D(Form("EtDataCorrected%sUnidentified",cutName->Data()),track->Pt(),track->Eta(),etpartialcorrected);
}
- if(!isTPC) etpartialcorrected = etpartialcorrectedNoID;//Not using PID for ITS
+ if(!isTPC){
+ etpartialcorrected = etpartialcorrectedNoID;//Not using PID for ITS
+ }
AddEt(et,etNoID,etpartialcorrected,etpartialcorrectedNoID,track->Pt(),isTPC,inPHOS,inEMCAL);
- //if(inEMCAL) cout<<"I should add a track"<<endl;
}
}
}
-// cout<<"Finishing with Raw/Corrected Et in full, PHOS, EMCAL acceptance of "
-// << GetRawEtFullAcceptanceITS() <<"/"
-// << GetCorrectedHadEtFullAcceptanceITS() <<", "
-// << GetRawEtPHOSAcceptanceITS() <<"/"
-// << GetCorrectedHadEtPHOSAcceptanceITS() <<", "
-// << GetRawEtEMCALAcceptanceITS() <<"/"
-// << GetCorrectedHadEtEMCALAcceptanceITS() <<endl;
-// cout<<"Finishing with Raw/Corrected Et w/o PID in full, PHOS, EMCAL acceptance of "
-// << GetRawEtFullAcceptanceITSNoPID() <<"/"
-// << GetCorrectedHadEtFullAcceptanceITSNoPID() <<", "
-// << GetRawEtPHOSAcceptanceITSNoPID() <<"/"
-// << GetCorrectedHadEtPHOSAcceptanceITSNoPID() <<", "
-// << GetRawEtEMCALAcceptanceITSNoPID() <<"/"
-// << GetCorrectedHadEtEMCALAcceptanceITSNoPID() <<endl;
-// cout<<"Finishing with Raw/Corrected Et in full, PHOS, EMCAL acceptance of "
-// << GetRawEtFullAcceptanceTPC() <<"/"
-// << GetCorrectedHadEtFullAcceptanceTPC() <<", "
-// << GetRawEtPHOSAcceptanceTPC() <<"/"
-// << GetCorrectedHadEtPHOSAcceptanceTPC() <<", "
-// << GetRawEtEMCALAcceptanceTPC() <<"/"
-// << GetCorrectedHadEtEMCALAcceptanceTPC() <<endl;
-// cout<<"Finishing with Raw/Corrected Et w/o PID in full, PHOS, EMCAL acceptance of "
-// << GetRawEtFullAcceptanceTPCNoPID() <<"/"
-// << GetCorrectedHadEtFullAcceptanceTPCNoPID() <<", "
-// << GetRawEtPHOSAcceptanceTPCNoPID() <<"/"
-// << GetCorrectedHadEtPHOSAcceptanceTPCNoPID() <<", "
-// << GetRawEtEMCALAcceptanceTPCNoPID() <<"/"
-// << GetCorrectedHadEtEMCALAcceptanceTPCNoPID() <<endl;
-// cout<<"Correction factors "
-// <<fCorrTotEtFullAcceptanceTPC<<", "<<fCorrTotEtFullAcceptanceITS<<", "<<fCorrHadEtFullAcceptanceTPC<<", "<<fCorrHadEtFullAcceptanceITS<<","
-// <<fCorrTotEtEMCALAcceptanceTPC<<", "<<fCorrTotEtEMCALAcceptanceITS<<", "<<fCorrHadEtEMCALAcceptanceTPC<<", "<<fCorrHadEtEMCALAcceptanceITS<<","
-// <<fCorrTotEtPHOSAcceptanceTPC<<", "<<fCorrTotEtPHOSAcceptanceITS<<", "<<fCorrHadEtPHOSAcceptanceTPC<<", "<<fCorrHadEtPHOSAcceptanceITS<<endl;
- FillHisto1D("RecoHadEtFullAcceptanceTPC",GetCorrectedHadEtFullAcceptanceTPC(),1.0);
- FillHisto1D("RecoTotEtFullAcceptanceTPC",GetCorrectedTotEtFullAcceptanceTPC(),1.0);
- FillHisto1D("RecoHadEtEMCALAcceptanceTPC",GetCorrectedHadEtEMCALAcceptanceTPC(),1.0);
- FillHisto1D("RecoTotEtEMCALAcceptanceTPC",GetCorrectedTotEtEMCALAcceptanceTPC(),1.0);
- FillHisto1D("RecoHadEtPHOSAcceptanceTPC",GetCorrectedHadEtPHOSAcceptanceTPC(),1.0);
- FillHisto1D("RecoTotEtPHOSAcceptanceTPC",GetCorrectedTotEtPHOSAcceptanceTPC(),1.0);
- FillHisto1D("RecoHadEtFullAcceptanceTPCNoPID",GetCorrectedHadEtFullAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoTotEtFullAcceptanceTPCNoPID",GetCorrectedTotEtFullAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoHadEtEMCALAcceptanceTPCNoPID",GetCorrectedHadEtEMCALAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoTotEtEMCALAcceptanceTPCNoPID",GetCorrectedTotEtEMCALAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoHadEtPHOSAcceptanceTPCNoPID",GetCorrectedHadEtPHOSAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoTotEtPHOSAcceptanceTPCNoPID",GetCorrectedTotEtPHOSAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoHadEtFullAcceptanceITS",GetCorrectedHadEtFullAcceptanceITS(),1.0);
- FillHisto1D("RecoTotEtFullAcceptanceITS",GetCorrectedTotEtFullAcceptanceITS(),1.0);
- FillHisto1D("RecoHadEtEMCALAcceptanceITS",GetCorrectedHadEtEMCALAcceptanceITS(),1.0);
- FillHisto1D("RecoTotEtEMCALAcceptanceITS",GetCorrectedTotEtEMCALAcceptanceITS(),1.0);
- FillHisto1D("RecoHadEtPHOSAcceptanceITS",GetCorrectedHadEtPHOSAcceptanceITS(),1.0);
- FillHisto1D("RecoTotEtPHOSAcceptanceITS",GetCorrectedTotEtPHOSAcceptanceITS(),1.0);
- FillHisto1D("RecoHadEtFullAcceptanceITSNoPID",GetCorrectedHadEtFullAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoTotEtFullAcceptanceITSNoPID",GetCorrectedTotEtFullAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoHadEtEMCALAcceptanceITSNoPID",GetCorrectedHadEtEMCALAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoTotEtEMCALAcceptanceITSNoPID",GetCorrectedTotEtEMCALAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoHadEtPHOSAcceptanceITSNoPID",GetCorrectedHadEtPHOSAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoTotEtPHOSAcceptanceITSNoPID",GetCorrectedTotEtPHOSAcceptanceITSNoPID(),1.0);
-
- FillHisto1D("RecoRawEtFullAcceptanceTPC",GetRawEtFullAcceptanceTPC(),1.0);
- FillHisto1D("RecoRawEtEMCALAcceptanceTPC",GetRawEtEMCALAcceptanceTPC(),1.0);
- FillHisto1D("RecoRawEtPHOSAcceptanceTPC",GetRawEtPHOSAcceptanceTPC(),1.0);
- FillHisto1D("RecoRawEtFullAcceptanceTPCNoPID",GetRawEtFullAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoRawEtEMCALAcceptanceTPCNoPID",GetRawEtEMCALAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoRawEtPHOSAcceptanceTPCNoPID",GetRawEtPHOSAcceptanceTPCNoPID(),1.0);
- FillHisto1D("RecoRawEtFullAcceptanceITS",GetRawEtFullAcceptanceITS(),1.0);
- FillHisto1D("RecoRawEtEMCALAcceptanceITS",GetRawEtEMCALAcceptanceITS(),1.0);
- FillHisto1D("RecoRawEtPHOSAcceptanceITS",GetRawEtPHOSAcceptanceITS(),1.0);
- FillHisto1D("RecoRawEtFullAcceptanceITSNoPID",GetRawEtFullAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoRawEtEMCALAcceptanceITSNoPID",GetRawEtEMCALAcceptanceITSNoPID(),1.0);
- FillHisto1D("RecoRawEtPHOSAcceptanceITSNoPID",GetRawEtPHOSAcceptanceITSNoPID(),1.0);
+ if(GetCorrectedHadEtFullAcceptanceTPC()>0.0)FillHisto1D("RecoHadEtFullAcceptanceTPC",GetCorrectedHadEtFullAcceptanceTPC(),1.0);
+ if(GetCorrectedTotEtFullAcceptanceTPC()>0.0)FillHisto1D("RecoTotEtFullAcceptanceTPC",GetCorrectedTotEtFullAcceptanceTPC(),1.0);
+ if(GetCorrectedHadEtEMCALAcceptanceTPC()>0.0)FillHisto1D("RecoHadEtEMCALAcceptanceTPC",GetCorrectedHadEtEMCALAcceptanceTPC(),1.0);
+ if(GetCorrectedTotEtEMCALAcceptanceTPC()>0.0)FillHisto1D("RecoTotEtEMCALAcceptanceTPC",GetCorrectedTotEtEMCALAcceptanceTPC(),1.0);
+ if(GetCorrectedHadEtPHOSAcceptanceTPC()>0.0)FillHisto1D("RecoHadEtPHOSAcceptanceTPC",GetCorrectedHadEtPHOSAcceptanceTPC(),1.0);
+ if(GetCorrectedTotEtPHOSAcceptanceTPC()>0.0)FillHisto1D("RecoTotEtPHOSAcceptanceTPC",GetCorrectedTotEtPHOSAcceptanceTPC(),1.0);
+ if(GetCorrectedHadEtFullAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoHadEtFullAcceptanceTPCNoPID",GetCorrectedHadEtFullAcceptanceTPCNoPID(),1.0);
+ if(GetCorrectedTotEtFullAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoTotEtFullAcceptanceTPCNoPID",GetCorrectedTotEtFullAcceptanceTPCNoPID(),1.0);
+ if(GetCorrectedHadEtEMCALAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoHadEtEMCALAcceptanceTPCNoPID",GetCorrectedHadEtEMCALAcceptanceTPCNoPID(),1.0);
+ if(GetCorrectedTotEtEMCALAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoTotEtEMCALAcceptanceTPCNoPID",GetCorrectedTotEtEMCALAcceptanceTPCNoPID(),1.0);
+ if(GetCorrectedHadEtPHOSAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoHadEtPHOSAcceptanceTPCNoPID",GetCorrectedHadEtPHOSAcceptanceTPCNoPID(),1.0);
+ if(GetCorrectedTotEtPHOSAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoTotEtPHOSAcceptanceTPCNoPID",GetCorrectedTotEtPHOSAcceptanceTPCNoPID(),1.0);
+ if(GetCorrectedHadEtFullAcceptanceITS()>0.0)FillHisto1D("RecoHadEtFullAcceptanceITS",GetCorrectedHadEtFullAcceptanceITS(),1.0);
+ if(GetCorrectedTotEtFullAcceptanceITS()>0.0)FillHisto1D("RecoTotEtFullAcceptanceITS",GetCorrectedTotEtFullAcceptanceITS(),1.0);
+ if(GetCorrectedHadEtEMCALAcceptanceITS()>0.0)FillHisto1D("RecoHadEtEMCALAcceptanceITS",GetCorrectedHadEtEMCALAcceptanceITS(),1.0);
+ if(GetCorrectedTotEtEMCALAcceptanceITS()>0.0)FillHisto1D("RecoTotEtEMCALAcceptanceITS",GetCorrectedTotEtEMCALAcceptanceITS(),1.0);
+ if(GetCorrectedHadEtPHOSAcceptanceITS()>0.0)FillHisto1D("RecoHadEtPHOSAcceptanceITS",GetCorrectedHadEtPHOSAcceptanceITS(),1.0);
+ if(GetCorrectedTotEtPHOSAcceptanceITS()>0.0)FillHisto1D("RecoTotEtPHOSAcceptanceITS",GetCorrectedTotEtPHOSAcceptanceITS(),1.0);
+ if(GetCorrectedHadEtFullAcceptanceITSNoPID()>0.0)FillHisto1D("RecoHadEtFullAcceptanceITSNoPID",GetCorrectedHadEtFullAcceptanceITSNoPID(),1.0);
+ if(GetCorrectedTotEtFullAcceptanceITSNoPID()>0.0)FillHisto1D("RecoTotEtFullAcceptanceITSNoPID",GetCorrectedTotEtFullAcceptanceITSNoPID(),1.0);
+ if(GetCorrectedHadEtEMCALAcceptanceITSNoPID()>0.0)FillHisto1D("RecoHadEtEMCALAcceptanceITSNoPID",GetCorrectedHadEtEMCALAcceptanceITSNoPID(),1.0);
+ if(GetCorrectedTotEtEMCALAcceptanceITSNoPID()>0.0)FillHisto1D("RecoTotEtEMCALAcceptanceITSNoPID",GetCorrectedTotEtEMCALAcceptanceITSNoPID(),1.0);
+ if(GetCorrectedHadEtPHOSAcceptanceITSNoPID()>0.0)FillHisto1D("RecoHadEtPHOSAcceptanceITSNoPID",GetCorrectedHadEtPHOSAcceptanceITSNoPID(),1.0);
+ if(GetCorrectedTotEtPHOSAcceptanceITSNoPID()>0.0)FillHisto1D("RecoTotEtPHOSAcceptanceITSNoPID",GetCorrectedTotEtPHOSAcceptanceITSNoPID(),1.0);
+
+ if(GetRawEtFullAcceptanceTPC()>0.0)FillHisto1D("RecoRawEtFullAcceptanceTPC",GetRawEtFullAcceptanceTPC(),1.0);
+ if(GetRawEtEMCALAcceptanceTPC()>0.0)FillHisto1D("RecoRawEtEMCALAcceptanceTPC",GetRawEtEMCALAcceptanceTPC(),1.0);
+ if(GetRawEtPHOSAcceptanceTPC()>0.0)FillHisto1D("RecoRawEtPHOSAcceptanceTPC",GetRawEtPHOSAcceptanceTPC(),1.0);
+ if(GetRawEtFullAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoRawEtFullAcceptanceTPCNoPID",GetRawEtFullAcceptanceTPCNoPID(),1.0);
+ if(GetRawEtEMCALAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoRawEtEMCALAcceptanceTPCNoPID",GetRawEtEMCALAcceptanceTPCNoPID(),1.0);
+ if(GetRawEtPHOSAcceptanceTPCNoPID()>0.0)FillHisto1D("RecoRawEtPHOSAcceptanceTPCNoPID",GetRawEtPHOSAcceptanceTPCNoPID(),1.0);
+ if(GetRawEtFullAcceptanceITS()>0.0)FillHisto1D("RecoRawEtFullAcceptanceITS",GetRawEtFullAcceptanceITS(),1.0);
+ if(GetRawEtEMCALAcceptanceITS()>0.0)FillHisto1D("RecoRawEtEMCALAcceptanceITS",GetRawEtEMCALAcceptanceITS(),1.0);
+ if(GetRawEtPHOSAcceptanceITS()>0.0)FillHisto1D("RecoRawEtPHOSAcceptanceITS",GetRawEtPHOSAcceptanceITS(),1.0);
+ if(GetRawEtFullAcceptanceITSNoPID()>0.0)FillHisto1D("RecoRawEtFullAcceptanceITSNoPID",GetRawEtFullAcceptanceITSNoPID(),1.0);
+ if(GetRawEtEMCALAcceptanceITSNoPID()>0.0)FillHisto1D("RecoRawEtEMCALAcceptanceITSNoPID",GetRawEtEMCALAcceptanceITSNoPID(),1.0);
+ if(GetRawEtPHOSAcceptanceITSNoPID()>0.0)FillHisto1D("RecoRawEtPHOSAcceptanceITSNoPID",GetRawEtPHOSAcceptanceITSNoPID(),1.0);
delete pID;
delete strTPC;
delete strITS;
void AliAnalysisHadEtReconstructed::AddEt(Float_t rawEt, Float_t rawEtNoPID, Float_t corrEt, Float_t corrEtNoPID, Float_t pt, Bool_t IsTPC, Bool_t InPHOS, Bool_t InEMCAL) {//Adding Et to each of the variables that tracks et event by event
if(pt>=AliAnalysisHadEt::fgPtTPCCutOff && IsTPC){//TPC tracks
//adding to the raw Et
- //if(InEMCAL) cout<<"Adding "<<rawEt<<" to the raw Et"<<endl;
fRawEtFullAcceptanceTPC += rawEt;
if(InPHOS)fRawEtPHOSAcceptanceTPC += rawEt;
if(InEMCAL)fRawEtEMCALAcceptanceTPC += rawEt;
if(InPHOS)fRawEtPHOSAcceptanceTPCNoPID += rawEtNoPID;
if(InEMCAL)fRawEtEMCALAcceptanceTPCNoPID += rawEtNoPID;
//adding to the corrected Et
- //if(InPHOS) cout<<"Adding "<<corrEt<<" to the corrected Et"<<endl;
fCorrectedHadEtFullAcceptanceTPC += corrEt;
if(InPHOS)fCorrectedHadEtPHOSAcceptanceTPC += corrEt;
if(InEMCAL)fCorrectedHadEtEMCALAcceptanceTPC += corrEt;
&& track->Phi()*180.0/TMath::Pi() < fCuts->GetGeometryPhosPhiAccMaxCut();//less than the maximum phi
}
Bool_t AliAnalysisHadEtReconstructed::IsInEMCAL(AliESDtrack *track){//This function will need to be elaborated on later to include EMCAL dead channels
- //cout<<"Eta: |"<<track->Eta()<<"|<"<< fCuts->GetGeometryEmcalEtaAccCut() <<"; phi: "<<fCuts->GetGeometryEmcalPhiAccMinCut()<<"<"<<track->Phi()*180.0/TMath::Pi()<<"<"<<fCuts->GetGeometryEmcalPhiAccMaxCut()<<endl;
return TMath::Abs(track->Eta()) < fCuts->GetGeometryEmcalEtaAccCut()//in eta acceptance
&& track->Phi()*180.0/TMath::Pi() > fCuts->GetGeometryEmcalPhiAccMinCut()//greater than the minimum phi
&& track->Phi()*180.0/TMath::Pi() < fCuts->GetGeometryEmcalPhiAccMaxCut();//less than the maximum phi
void AliAnalysisHadEtReconstructed::Init()
{ // Init
- AliAnalysisHadEt::Init();
-
- if (fConfigFile.Length()) {
- gROOT->LoadMacro(fConfigFile);
- fCorrections = (AliAnalysisHadEtCorrections *) gInterpreter->ProcessLine("ConfigHadEtAnalysis()");
+ AliAnalysisHadEt::Init();
+ if(fCorrections){
fCorrTotEtFullAcceptanceTPC = fCorrections->GetConstantCorrections(kTRUE,fgPtTPCCutOff,"Full");
fCorrTotEtFullAcceptanceITS = fCorrections->GetConstantCorrections(kTRUE,fgPtITSCutOff,"Full");
fCorrHadEtFullAcceptanceTPC = fCorrections->GetConstantCorrections(kFALSE,fgPtTPCCutOff,"Full");
fCorrTotEtPHOSAcceptanceITS = fCorrections->GetConstantCorrections(kTRUE,fgPtITSCutOff,"PHOS");
fCorrHadEtPHOSAcceptanceTPC = fCorrections->GetConstantCorrections(kFALSE,fgPtTPCCutOff,"PHOS");
fCorrHadEtPHOSAcceptanceITS = fCorrections->GetConstantCorrections(kFALSE,fgPtITSCutOff,"PHOS");
-
+ }
+ else{
+ cout<<"Warning! You have not set corrections. Your code will crash. You have to set the corrections."<<endl;
}
}
if(TMath::Abs(fCorrTotEtFullAcceptanceTPC)<1e-3){
if (fConfigFile.Length()) {
- cout<<"Rereading fCorrections file..."<<endl;
+ cout<<"Warning: Rereading fCorrections file..."<<endl;
gROOT->LoadMacro(fConfigFile);
fCorrections = (AliAnalysisHadEtCorrections *) gInterpreter->ProcessLine("ConfigHadEtAnalysis()");
fCorrTotEtFullAcceptanceTPC = fCorrections->GetConstantCorrections(kTRUE,fgPtTPCCutOff,"Full");
}
else{cerr<<"Uh-oh! Unable to open configuration file!"<<endl;}
}
-
}
void AliAnalysisHadEtReconstructed::CreateHistograms(){//Creating histograms and adding them to the output TList
Float_t maxdEdx = 150.0;
switch(i){
case 0:
- cutName = strTPC;
+ cutName = strTPCITS;
break;
case 1:
cutName = strITS;
maxdEdx = 500.0;
break;
case 2:
- cutName = strTPCITS;
+ cutName = strTPC;
+ maxPtdEdx = 5;
+ maxdEdx = 500.0;
break;
default:
cerr<<"Error: cannot make histograms!"<<endl;
sprintf(histoname,"Reco%s%sAcceptance%s%s",et->Data(),acceptance->Data(),detector->Data(),partid->Data());
sprintf(histotitle,"Reconstructed %s with %s acceptance for p_{T}>%s GeV/c%s",etstring->Data(),acceptance->Data(),ptstring->Data(),partidstring->Data());
sprintf(xtitle,"Reconstructed %s",etstring->Data());
- CreateHisto1D(histoname,histotitle,xtitle,ytitle->Data(),nbinsEt,minEt,maxEt);
+ CreateHisto1D(histoname,histotitle,xtitle,ytitle->Data(),nbinsEt*2,minEt,maxEt);
}
}
}
}
+ //CreateHisto2D("Efficiency","Efficiency","pT","efficiency",
+
delete sTPC;
delete sITS;
delete sTPCpt;