#include "AliEMCALJet.h"
class TClonesArray;
-class AliEMCALHadronCorrection;
-
class TH2F;
class TH1F;
class TCanvas;
+class TList;
+class AliEMCALHadronCorrection;
class AliEMCALJetFinder : public TTask {
public:
Float_t min_move, Float_t max_move, Int_t mode,
Float_t prec_bg, Int_t ierror);
virtual void Find();
+ virtual void FindChargedJet();
virtual void FindTracksInJetCone();
virtual void Test();
virtual void BuildTrackFlagTable();
virtual void SetPtCut(Float_t par = 1.);
virtual void SetMomentumSmearing(Bool_t flag = kFALSE) {fSmear = flag;}
virtual void SetEfficiencySim(Bool_t flag = kFALSE) {fEffic = flag;}
- virtual void SetSamplingFraction(Float_t par = 12.9) {fSamplingF = par;}
+ virtual void SetSamplingFraction(Float_t par) {fSamplingF = par;}
+ virtual void SetEnergyWeightingFlag(Bool_t flag) {fWeightingMethod = flag;}
+ virtual void SetEMCALWeight(Float_t par) {fEMCALWeight = par;}
+ virtual void SetTrackWeight(Float_t par) {fTrackWeight = par;}
virtual void SetIncludeK0andN(Bool_t flag = kFALSE) {fK0N = flag;}
// Correction of hadronic energy
virtual void SetHadronCorrector(AliEMCALHadronCorrection* corr)
// virtual void Print(Option_t* option="") const; // *MENU*
Bool_t GetWriteKey() {return fWrite;}
- AliEMCALJet* GetJetT() {return fJetT[0];}
+ //AliEMCALJet* GetJetT() {return fJetT[0];}
+ AliEMCALJet* GetJetT(Int_t n = 0) {return fJetT[n];}
virtual void DrawHistsForTuning(Int_t mode=0); // *MENU*
virtual void PrintParameters(Int_t mode=0); // *MENU*
virtual const Char_t* GetFileNameForParameters(Char_t* dir="RES/");
virtual Float_t JetPhiW(Int_t);
virtual Float_t JetEtaL(Int_t);
virtual Float_t JetEtaW(Int_t);
- virtual TH2F* GetLego() {return fLego;}
+ TH2F* GetLego() {return fLego;}
+ TH2F* GetLegoB() {return fLegoB;}
TH2F* GetLegoEMCAL() {return fhLegoEMCAL;}
+ TH2F* GetLegoTracks() {return fhLegoTracks;}
TH2F* GethEff() {return fhEff;}
TH1F* GetCellEt() {return fhCellEt;}
TH1F* GetCellEMCALEt() {return fhCellEMCALEt;}
TH1F* GetTrackPt() {return fhTrackPt;}
TH1F* GetTrackPtBcut() {return fhTrackPtBcut;}
+ TList* GetHistsList() {return fHistsList;}
+ Int_t GetNChTpc() {return fNChTpc;}
+ Bool_t GetEnergyWeightingFlag() {return fWeightingMethod ;}
+ Float_t GetEMCALWeight() {return fEMCALWeight;}
+ Float_t GetTrackWeight() {return fTrackWeight;}
void DrawLego(Char_t *opt="lego"); // *MENU*
void DrawLegoEMCAL(Char_t *opt="lego"); // *MENU*
void DrawLegos(); // *MENU*
+ Bool_t IsThisPartonsOrDiQuark(Int_t pdg);
// I/O
virtual void SetOutputFileName(char* name) {fOutFileName = name;}
virtual void FillFromHits(Int_t flag = 0);
virtual TClonesArray* Jets() {return fJets;}
private:
virtual void BookLego();
+ Float_t WeightedJetEnergy(Float_t eta, Float_t phi);
+ Float_t EMCALConeEnergy(Float_t eta, Float_t phi);
+ Float_t TrackConeEnergy(Float_t eta, Float_t phi);
+ Float_t HCConeEnergy(Float_t eta, Float_t phi);
virtual void DumpLego();
virtual void ResetMap();
virtual Float_t PropagatePhi(Float_t pt, Float_t charge, Bool_t& curls);
virtual void RearrangeParticlesMemory(Int_t npart);
protected:
Bool_t fWrite; // Key for writing
+ Bool_t fWeightingMethod; // Key for writing
TClonesArray* fJets; //! List of Jets
TH2F* fLego; //! Lego Histo
TH2F* fLegoB; //! Lego Histo Backg
TH1F* fhCellEMCALEt; //! Et distr. for cells from fLegoEMCAL
TH1F* fhTrackPt; //! Pt distr. for charge particles
TH1F* fhTrackPtBcut; //! Pt distr. for charge particles + cut due to magnetic field
- TH1F* fh;// ??
+ TH1F* fhChPartMultInTpc;//! Ch. part. multiplicity in TPC acceptance
TCanvas* fC1; //! first canvas for drawing
+ TList* fHistsList; //! List of hists - 4-mar-2002
AliEMCALJet* fJetT[10]; //! Jet temporary storage
AliEMCALHadronCorrection* fHadronCorrector; //! Pointer to hadronic correction
Int_t fHCorrection; // Hadron correction flag
Bool_t fSmear; // Flag for momentum smearing
Bool_t fEffic; // Flag for efficiency simulation
Bool_t fK0N; // Flag for efficiency simulation
- Int_t fNjets; //! Number of Jets
+ Int_t fNjets; //! Number of Jetsp
Float_t fDeta; //! eta cell size
Float_t fDphi; //! phi cell size
Int_t fNcell; //! number of cells
Float_t fEtCell[30000]; //! Cell Energy
Float_t fEtaCell[30000]; //! Cell eta
Float_t fPhiCell[30000]; //! Cell phi
- Int_t* fTrackList; //! List of selected tracks
- Int_t* fTrackListB; //! List of selected tracks in Bg
Int_t fNt; //! number of tracks
+ Int_t fNChTpc; //! number of ch.part in TPC
+
Int_t fNtS; //! number of tracks selected
+ Int_t* fTrackList; //! List of selected tracks
Float_t* fPtT; //! Pt of tracks
Float_t* fEtaT; //! Eta of tracks
Float_t* fPhiT; //! Phi of tracks
+ Int_t* fPdgT; //! PDG code of tracks
+
Int_t fNtB; //! number of tracks in Bg
+ Int_t* fTrackListB; //! List of selected tracks in Bg
Float_t* fPtB; //! Pt of tracks in Bg
Float_t* fEtaB; //! Eta of tracks in Bg
Float_t* fPhiB; //! Phi of tracks in Bg
+ Int_t* fPdgB; //! PDG of tracks in Bg
// parameter for jet_finder_ua1
Int_t fMode; // key for BG subtraction
TFile* fOutFile; //! Output file
TFile* fInFile; //! Output file
Int_t fEvent; //! Processed event
-
- ClassDef(AliEMCALJetFinder,2) // JetFinder for EMCAL
+ Float_t fEMCALWeight;
+ Float_t fTrackWeight;
+ ClassDef(AliEMCALJetFinder,3) // JetFinder for EMCAL
}
;
#endif // ALIEMCALJetFinder_H
-
-
-
-
-
-