#include <TChain.h>
#include <TFile.h>
#include <TH1F.h>
-#include <TH1.h>
-#include <TH2.h>
#include <TH2F.h>
#include <TH3F.h>
#include <TList.h>
#include <TMatrixDSymEigen.h>
#include <TStyle.h>
#include <TProfile.h>
-#include "TDatabasePDG.h"
#include "AliAnalysisTaskJetCorrections.h"
#include "AliAnalysisManager.h"
-#include "AliJetFinder.h"
-#include "AliJetReader.h"
-#include "AliJetHeader.h"
-#include "AliJetReaderHeader.h"
-#include "AliUA1JetHeaderV1.h"
#include "AliESDEvent.h"
#include "AliAODEvent.h"
#include "AliAODVertex.h"
#include "AliMCEvent.h"
#include "AliStack.h"
#include "AliGenPythiaEventHeader.h"
-#include "AliJetKineReaderHeader.h"
#include "AliGenCocktailEventHeader.h"
-#include "AliAODPid.h"
-#include "AliExternalTrackParam.h"
-#include "AliAnalysisTaskJetSpectrum.h"
-#include "AliAnalysisTaskThreeJets.h"
#include "AliAnalysisHelperJetTasks.h"
+//
+//
+// corrections to jet energy by sona
+//
+//
ClassImp(AliAnalysisTaskJetCorrections)
- AliAnalysisTaskJetCorrections::AliAnalysisTaskJetCorrections() : AliAnalysisTaskSE(),
-
+ AliAnalysisTaskJetCorrections::AliAnalysisTaskJetCorrections() : AliAnalysisTaskSE(),
fAOD(0x0),
-
+
fBranchRec(""),
fBranchGen(""),
fhEt1Et23(0x0)
{
-
+ //
+ // ctor
+ //
for (Int_t i = 0; i < 3; i++)
{
fhECorrJet10[i] = 0;
fhEt1Et22(0x0),
fhEt1Et23(0x0)
{
+ //
+ // ctor
+ //
for (Int_t i = 0; i < 3; i++)
{
fhECorrJet10[i] = 0;
}
//_______________________________________User defined functions_____________________________________________________________________________________
-void AliAnalysisTaskJetCorrections::GetThrustAxis(TVector3 &n01, TVector3 * pTrack, Int_t &nTracks)
+void AliAnalysisTaskJetCorrections::GetThrustAxis(TVector3 &n01, TVector3 * pTrack,const Int_t &nTracks)
{
+ //
+ // Getthrust axis
+ //
TVector3 psum;
Double_t psum1 = 0;
Double_t psum2 = 0;
#define ALIANALYSISTASKJETCORRECTIONS_H\r
\r
#include "AliAnalysisTaskSE.h"\r
-#include <iostream>\r
-#include <fstream>\r
+\r
+//\r
+// corrections to jet energy by sona \r
+// \r
\r
class AliJetFinder;\r
class AliESDEvent;\r
\r
virtual void SetAODInput(Bool_t b){fUseAODInput = b;}\r
\r
- virtual void SetBranchGen(char* c){fBranchGen = c;}\r
- virtual void SetBranchRec(char* c){fBranchRec = c;}\r
+ virtual void SetBranchGen(const char* c){fBranchGen = c;}\r
+ virtual void SetBranchRec(const char* c){fBranchRec = c;}\r
\r
virtual Double_t SetR(Double_t b){fR = b; return fR;} \r
\r
- virtual void GetThrustAxis(TVector3 &n01, TVector3 * pTrack, Int_t &nTracks);\r
+ virtual void GetThrustAxis(TVector3 &n01, TVector3 * pTrack,const Int_t &nTracks);\r
private:\r
AliAnalysisTaskJetCorrections(const AliAnalysisTaskJetCorrections&);\r
AliAnalysisTaskJetCorrections& operator = (const AliAnalysisTaskJetCorrections&);\r
TString fBranchRec; // AOD branch name for reconstructed\r
TString fBranchGen; // AOD brnach for genereated\r
\r
- Bool_t fUseAODInput;\r
-\r
- Double_t fR;\r
- TList * fList;\r
-\r
- Int_t fGlobVar;\r
- Double_t fXsection;\r
-\r
-\r
- TH1F * fhEGen;\r
- TH1F * fhERec;\r
- TH1F * fhEGenRest;\r
- TH1F * fhERecRest;\r
- TH1F * fhEsumGenRest;\r
- TH1F * fhEsumRecRest;\r
-\r
- TH2F * fhE2vsE1Gen;\r
- TH2F * fhE2vsE1Rec;\r
- TH2F * fhE2E1vsEsumGen;\r
- TH2F * fhE2E1vsEsumRec;\r
- TH2F * fhE2E1vsE1Gen;\r
- TH2F * fhE2E1vsE1Rec;\r
- TH2F * fhE2E1vsdPhiGen;\r
- TH2F * fhE2E1vsdPhiRec;\r
-\r
- TH2F * fhTrackBalance2;\r
- TH2F * fhTrackBalance3;\r
-\r
- TH2F * fhEt1Et22;\r
- TH2F * fhEt1Et23;\r
-\r
- TProfile * fhECorrJet10[3];\r
- TProfile * fhECorrJet05[3];\r
- TProfile * fhECorrJet01[3];\r
- TProfile * fhECorrJet001[3];\r
+ Bool_t fUseAODInput; // use aod input not output\r
+ Double_t fR; // radius\r
+ TList * fList; // output list\r
+ \r
+ Int_t fGlobVar; //\r
+ Double_t fXsection; //\r
+\r
+\r
+ TH1F * fhEGen; //\r
+ TH1F * fhERec; //\r
+ TH1F * fhEGenRest; //\r
+ TH1F * fhERecRest; //\r
+ TH1F * fhEsumGenRest; //\r
+ TH1F * fhEsumRecRest; //\r
+\r
+ TH2F * fhE2vsE1Gen; //\r
+ TH2F * fhE2vsE1Rec; //\r
+ TH2F * fhE2E1vsEsumGen; //\r
+ TH2F * fhE2E1vsEsumRec; //\r
+ TH2F * fhE2E1vsE1Gen; //\r
+ TH2F * fhE2E1vsE1Rec; //\r
+ TH2F * fhE2E1vsdPhiGen; //\r
+ TH2F * fhE2E1vsdPhiRec; //\r
+\r
+ TH2F * fhTrackBalance2; //\r
+ TH2F * fhTrackBalance3; //\r
+\r
+ TH2F * fhEt1Et22; //\r
+ TH2F * fhEt1Et23; //\r
+\r
+ TProfile * fhECorrJet10[3]; //\r
+ TProfile * fhECorrJet05[3]; //\r
+ TProfile * fhECorrJet01[3]; //\r
+ TProfile * fhECorrJet001[3]; //\r
\r
- TProfile * fhdEvsErec10[3];\r
- TProfile * fhdEvsErec05[3];\r
- TProfile * fhdEvsErec01[3];\r
- TProfile * fhdEvsErec001[3];\r
-\r
- TH2F * fhdPhidEta10[3];\r
- TH2F * fhdPhidEta05[3];\r
- TH2F * fhdPhidEta01[3];\r
- TH2F * fhdPhidEta001[3];\r
-\r
- TH2F * fhdPhidEtaPt10[3];\r
- TH2F * fhdPhidEtaPt05[3];\r
- TH2F * fhdPhidEtaPt01[3];\r
- TH2F * fhdPhidEtaPt001[3];\r
+ TProfile * fhdEvsErec10[3]; //\r
+ TProfile * fhdEvsErec05[3]; //\r
+ TProfile * fhdEvsErec01[3]; //\r
+ TProfile * fhdEvsErec001[3]; //\r
+\r
+ TH2F * fhdPhidEta10[3]; //\r
+ TH2F * fhdPhidEta05[3]; //\r
+ TH2F * fhdPhidEta01[3]; //\r
+ TH2F * fhdPhidEta001[3]; //\r
+\r
+ TH2F * fhdPhidEtaPt10[3]; //\r
+ TH2F * fhdPhidEtaPt05[3]; //\r
+ TH2F * fhdPhidEtaPt01[3]; //\r
+ TH2F * fhdPhidEtaPt001[3]; //\r
\r
ClassDef(AliAnalysisTaskJetCorrections, 1)\r
};\r
-#include <TROOT.h>
#include <TSystem.h>
-#include <TInterpreter.h>
-#include <TChain.h>
#include <TFile.h>
#include <TH1F.h>
-#include <TH1.h>
-#include <TH2.h>
#include <TH2F.h>
#include <TH3F.h>
#include <TList.h>
#include <TTree.h>
-#include <TBranch.h>
#include <TLorentzVector.h>
#include <TClonesArray.h>
-#include <TObjArray.h>
#include <TRefArray.h>
-#include <TArrayD.h>
-#include <fstream>
#include <TVector3.h>
#include <TVectorD.h>
#include <TMatrixDSym.h>
#include <TMatrixDSymEigen.h>
-#include <TStyle.h>
#include <TProfile.h>
-#include "TDatabasePDG.h"
#include "AliAnalysisTaskThreeJets.h"
#include "AliAnalysisManager.h"
-#include "AliJetFinder.h"
-#include "AliJetReader.h"
-#include "AliJetHeader.h"
-#include "AliJetReaderHeader.h"
-#include "AliUA1JetHeaderV1.h"
-#include "AliESDEvent.h"
#include "AliAODEvent.h"
#include "AliAODVertex.h"
#include "AliAODHandler.h"
#include "AliAODTrack.h"
#include "AliAODJet.h"
+#include "AliGenPythiaEventHeader.h"
#include "AliMCEventHandler.h"
#include "AliMCEvent.h"
#include "AliStack.h"
-#include "AliGenPythiaEventHeader.h"
-#include "AliJetKineReaderHeader.h"
-#include "AliGenCocktailEventHeader.h"
-#include "AliAODPid.h"
-#include "AliExternalTrackParam.h"
-#include "AliAnalysisTaskJetSpectrum.h"
#include "AliAnalysisHelperJetTasks.h"
+//
+//
+// Trhreee jet task by sona
+//
+//
ClassImp(AliAnalysisTaskThreeJets)
//_______________________________________User defined functions_____________________________________________________________________________________
void AliAnalysisTaskThreeJets::FillTopology(TH2F * Dalitz, TH1F * fhMu34, TH1F * fhMu45, TH1F * fhMu35, Double_t * x, TVector3 * pRest, Double_t xsection)
{
+ //
+ // fill the topology histos
+ //
Dalitz->Fill(x[0], x[1], xsection);
fhMu35->Fill(TMath::Sqrt(x[0]*x[2]*(1-(pRest[0].Unit()).Dot(pRest[2].Unit()))/2), xsection);
fhMu34->Fill(TMath::Sqrt(x[0]*x[1]*(1-(pRest[0].Unit()).Dot(pRest[1].Unit()))/2), xsection);
//______________________________________________________________________________________________________
-void AliAnalysisTaskThreeJets::GetThrustAxis(TVector3 &n01, TVector3 * pTrack, Int_t &nTracks)
+void AliAnalysisTaskThreeJets::GetThrustAxis(TVector3 &n01, TVector3 * pTrack, const Int_t &nTracks)
{
+ //
+ // fetch the thrust axis
+ //
TVector3 psum;
Double_t psum1 = 0;
Double_t psum2 = 0;
void AliAnalysisTaskThreeJets::GetEventShapes(TVector3 &n01, TVector3 * pTrack, Int_t nTracks, Double_t * eventShapes)
{
+ //
+ // get the event shape
+ //
TVector3 psum;
Double_t psum1 = 0;
Double_t psum2 = 0;
//__________________________________________________________________________________________________________________________
-Double_t AliAnalysisTaskThreeJets::Exponent(Double_t x, Double_t * par)
+Double_t AliAnalysisTaskThreeJets::Exponent(Double_t x,const Double_t * const par) const
{
return par[0]*TMath::Power(1/TMath::E(), TMath::Power(par[1]/x, par[2])+0.5*TMath::Power((x-par[3])/par[0], 2))+par[4]*x;
}
-Double_t AliAnalysisTaskThreeJets::Exponent2(Double_t x, Double_t * par)
+Double_t AliAnalysisTaskThreeJets::Exponent2(Double_t x,const Double_t * const par) const
{
return par[0]*TMath::Power(1/TMath::E(), TMath::Power(par[1]/x, par[2]))+par[3]*x;
}
-Double_t AliAnalysisTaskThreeJets::Gauss(Double_t x, Double_t * par)
+Double_t AliAnalysisTaskThreeJets::Gauss(Double_t x,const Double_t * const par) const
{
return 1/(par[1])*TMath::Power(1/TMath::E(), 0.5*(x-par[0])*(x-par[0])/(par[1]*par[1]));
}
-Double_t AliAnalysisTaskThreeJets::Total(Double_t x, Double_t * par)
+Double_t AliAnalysisTaskThreeJets::Total(Double_t x,const Double_t * const par) const
{
return Exponent(x, par)+Gauss(x, &par[4]);
}
#define ALIANALYSISTASKTHREEJETS_H\r
\r
#include "AliAnalysisTaskSE.h"\r
-#include <iostream>\r
-#include <fstream>\r
+\r
+// \r
+// Task for three jet ana by sona \r
+// \r
\r
//class AliJetHistos;\r
//class AliJetCorrHistos;\r
\r
virtual void SetAODInput(Bool_t b){fUseAODInput = b;}\r
\r
- virtual void SetBranchGen(char* c){fBranchGen = c;}\r
- virtual void SetBranchRec(char* c){fBranchRec = c;}\r
+ virtual void SetBranchGen(const char* c){fBranchGen = c;}\r
+ virtual void SetBranchRec(const char* c){fBranchRec = c;}\r
\r
/* virtual void SetUseBkg(Bool_t b) {fUseBkg = b;} */\r
/* virtual void SetUseSimTPC(Bool_t b) {fUseFastTPC = b;} */\r
\r
virtual Double_t SetR(Double_t b){fR = b; return fR;} \r
// TArrayD * GetThrustParamMC(AliMCEvent* mcEvent, Int_t nstudymin, Double_t ptcutoff, Double_t etacutoff, Bool_t chom, TArrayD * evsh);\r
- virtual void GetThrustAxis(TVector3 &n01, TVector3 * p_track, Int_t &nTracks);\r
+ virtual void GetThrustAxis(TVector3 &n01, TVector3 * p_track,const Int_t &nTracks);\r
virtual void GetEventShapes(TVector3 &n01, TVector3 * pTrack, Int_t nTracks, Double_t * eventShapes);\r
virtual Bool_t IsPrimChar(TParticle* aParticle, Int_t aTotalPrimaries, Bool_t adebug);\r
\r
- Double_t Exponent(Double_t x, Double_t * par);\r
- Double_t Exponent2(Double_t x, Double_t * par);\r
- Double_t Gauss(Double_t x, Double_t * par);\r
- Double_t Total(Double_t x, Double_t * par);\r
+ Double_t Exponent(Double_t x,const Double_t * const par) const;\r
+ Double_t Exponent2(Double_t x,const Double_t * const par) const;\r
+ Double_t Gauss(Double_t x,const Double_t * const par) const;\r
+ Double_t Total(Double_t x,const Double_t * const par) const;\r
\r
private:\r
AliAnalysisTaskThreeJets(const AliAnalysisTaskThreeJets&);\r
TString fBranchRec; // AOD branch name for reconstructed\r
TString fBranchGen; // AOD brnach for genereated\r
\r
- Bool_t fUseAODInput;\r
+ Bool_t fUseAODInput; // read the AOD from the input no from the output\r
\r
- Double_t fR;\r
- TList * fList;\r
+ Double_t fR; // radius\r
+ TList * fList; // output list\r
\r
- Int_t fGlobVar;\r
- Double_t fXsection;\r
+ Int_t fGlobVar; // globvar\r
+ Double_t fXsection; // xsectio\r
\r
- TH2F * fhX3X4Rec;\r
- TH2F * fhX3X4Gen;\r
+ TH2F * fhX3X4Rec; //\r
+ TH2F * fhX3X4Gen; //\r
\r
- TH1F * fhMu35Rec; \r
- TH1F * fhMu34Rec; \r
- TH1F * fhMu45Rec; \r
+ TH1F * fhMu35Rec; //\r
+ TH1F * fhMu34Rec; //\r
+ TH1F * fhMu45Rec; //\r
\r
- TH1F * fhMu35Gen; \r
- TH1F * fhMu34Gen; \r
- TH1F * fhMu45Gen; \r
+ TH1F * fhMu35Gen; //\r
+ TH1F * fhMu34Gen; //\r
+ TH1F * fhMu45Gen; //\r
\r
- TH1I * fhInOut;\r
- TH1F * fhThrustRec2;\r
- TH1F * fhThrustRec3;\r
+ TH1I * fhInOut; //\r
+ TH1F * fhThrustRec2; //\r
+ TH1F * fhThrustRec3; // \r
\r
- TH1F * fhThrustGen2;\r
- TH1F * fhThrustGen3;\r
+ TH1F * fhThrustGen2; //\r
+ TH1F * fhThrustGen3; // \r
\r
- TH1F * fhCGen2;\r
- TH1F * fhCGen3;\r
+ TH1F * fhCGen2; //\r
+ TH1F * fhCGen3; // \r
\r
- TH1F * fhSGen2;\r
- TH1F * fhSGen3;\r
+ TH1F * fhSGen2; //\r
+ TH1F * fhSGen3; // \r
\r
- TH1F * fhAGen2;\r
- TH1F * fhAGen3;\r
+ TH1F * fhAGen2; // \r
+ TH1F * fhAGen3; //\r
\r
- TH1F * fhCRec2;\r
- TH1F * fhCRec3;\r
+ TH1F * fhCRec2; // \r
+ TH1F * fhCRec3; // \r
\r
- TH1F * fhSRec2;\r
- TH1F * fhSRec3;\r
+ TH1F * fhSRec2; //\r
+ TH1F * fhSRec3; //\r
\r
- TH1F * fhARec2;\r
- TH1F * fhARec3;\r
+ TH1F * fhARec2; //\r
+ TH1F * fhARec3; //\r
\r
- TH2F * fhX3;\r
- TH2F * fhX4;\r
- TH2F * fhX5;\r
+ TH2F * fhX3; //\r
+ TH2F * fhX4; //\r
+ TH2F * fhX5; //\r
\r
- TProfile * fhXSec;\r
- TH2F * fhX3X4Rec60;\r
- TH2F * fhX3X4Rec60100;\r
- TH2F * fhX3X4Rec100;\r
- TH2F * fhX3X4Gen60;\r
- TH2F * fhX3X4Gen60100;\r
- TH2F * fhX3X4Gen100;\r
+ TProfile * fhXSec; //\r
+ TH2F * fhX3X4Rec60; //\r
+ TH2F * fhX3X4Rec60100; //\r
+ TH2F * fhX3X4Rec100; //\r
+ TH2F * fhX3X4Gen60; //\r
+ TH2F * fhX3X4Gen60100; //\r
+ TH2F * fhX3X4Gen100; //\r
\r
- TH2F * fhdPhiThrustGen;\r
- TH2F * fhdPhiThrustGenALL;\r
- TH2F * fhdPhiThrustRec;\r
- TH2F * fhdPhiThrustRecALL;\r
+ TH2F * fhdPhiThrustGen; //\r
+ TH2F * fhdPhiThrustGenALL; //\r
+ TH2F * fhdPhiThrustRec; //\r
+ TH2F * fhdPhiThrustRecALL; //\r
\r
ClassDef(AliAnalysisTaskThreeJets, 1)\r
};\r