leading constituent pt
authorkleinb <kleinb@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 6 Jun 2012 19:20:04 +0000 (19:20 +0000)
committerkleinb <kleinb@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 6 Jun 2012 19:20:04 +0000 (19:20 +0000)
JETAN/AliAnalysisTaskJetCluster.cxx
STEER/AOD/AliAODJet.cxx
STEER/AOD/AliAODJet.h

index 89f73ea..553bd3f 100644 (file)
@@ -1138,6 +1138,8 @@ void AliAnalysisTaskJetCluster::UserExec(Option_t */*option*/)
        }
        if(j==0)fh1PtJetConstLeadingRec->Fill(part->Pt());
       }
+      //set pT of leading constituent of jet
+      aodOutJet->SetPtLeading(ptLead);
 
       AliAODTrack *aodT = 0;
       if(partLead){
index 8a5aca9..8839d24 100644 (file)
@@ -30,6 +30,7 @@ ClassImp(AliAODJet)
 AliAODJet::AliAODJet() :
     AliVParticle(),
     fNeutralFraction(0),
+    fPtLeadingConstituent(-1.),
     fTrigger(0),
     fMomentum(0),
     fVectorAreaCharged(0),
@@ -47,10 +48,13 @@ AliAODJet::AliAODJet() :
 AliAODJet::AliAODJet(Double_t px, Double_t py, Double_t pz, Double_t e):
     AliVParticle(),
     fNeutralFraction(0),
+    fPtLeadingConstituent(-1.),
     fTrigger(0),
     fMomentum(0),
     fVectorAreaCharged(0),
     fRefTracks(new TRefArray())
+
+
 {
   // constructor
     fBackgEnergy[0]   = 0.;     
@@ -65,10 +69,12 @@ AliAODJet::AliAODJet(Double_t px, Double_t py, Double_t pz, Double_t e):
 AliAODJet::AliAODJet(TLorentzVector & p):
     AliVParticle(),
     fNeutralFraction(0),
+    fPtLeadingConstituent(-1.),
     fTrigger(0),
     fMomentum(0),
     fVectorAreaCharged(0),
     fRefTracks(new TRefArray())
+
 {
   // constructor
     fBackgEnergy[0]   = 0.;     
@@ -94,10 +100,12 @@ AliAODJet::~AliAODJet()
 AliAODJet::AliAODJet(const AliAODJet& jet) :
     AliVParticle(jet),
     fNeutralFraction(jet.fNeutralFraction),
+    fPtLeadingConstituent(jet.fPtLeadingConstituent),
     fTrigger(jet.fTrigger),
     fMomentum(0),
     fVectorAreaCharged(0),
     fRefTracks(0)
+
 {
   // Copy constructor
     fBackgEnergy[0]   = jet.fBackgEnergy[0];
@@ -128,6 +136,7 @@ AliAODJet& AliAODJet::operator=(const AliAODJet& jet)
     fPtSubtracted[0] =   jet.fPtSubtracted[0];
     fPtSubtracted[1] =   jet.fPtSubtracted[1];
     fNeutralFraction = jet.fNeutralFraction;
+    fPtLeadingConstituent = jet.fPtLeadingConstituent;
     fTrigger = jet.fTrigger;
     
     
@@ -142,6 +151,8 @@ AliAODJet& AliAODJet::operator=(const AliAODJet& jet)
       }
     delete fRefTracks;
     fRefTracks = new TRefArray(*jet.fRefTracks);    
+
+
   }
 
   return *this;
@@ -164,6 +175,7 @@ void AliAODJet::Print(Option_t* option) const
   printf("Effective Area: \n");
   printf("Charged:  %13.3f\n", EffectiveAreaCharged());
   printf("Neutral:  %13.3f\n", EffectiveAreaNeutral());
+  printf("Leading constituent: %f\n",GetPtLeading());
  }
  else {
   printf("Jet %s, Eta: %13.3f, Phi: %13.3f, Pt: %13.3f\n",option,Eta(),Phi(),Pt());
index da2409f..ec2c66e 100644 (file)
@@ -88,19 +88,22 @@ class AliAODJet : public AliVParticle {
     virtual Double_t   ErrorEffectiveAreaCharged()   const { return  fEffectiveAreaError[0];}
     virtual Double_t   ErrorEffectiveAreaNeutral()   const { return  fEffectiveAreaError[1];}
     virtual Double_t   DeltaR(const AliVParticle* part) const;
-
     
     TLorentzVector*    MomentumVector()         const {return fMomentum;}
+
+    virtual void     SetPtLeading(Double_t pt) {fPtLeadingConstituent=pt;}
+    virtual Double_t GetPtLeading()        const { return fPtLeadingConstituent;}
+
     virtual void       Print(Option_t* option) const;
     
-// Dummy  
+    // Dummy  
     virtual Short_t Charge()      const { return 0;}
     virtual const Double_t* PID() const { return NULL;}
     virtual Int_t   GetLabel()    const { return -1;}
-  // Dummy
+    // Dummy
     virtual Int_t    PdgCode()    const {return 0;}
 
-//
+    //
 
     // first only one bit for EMCAL and TRD, leave space for more
     // trigger types and/or other detectors
@@ -119,12 +122,14 @@ class AliAODJet : public AliVParticle {
     Double32_t      fEffectiveAreaError[2];  //[0,1,10] relative error of jet areas, 10 bit precision
     Double32_t      fNeutralFraction;        //[0,1,12] Neutral fraction between 0 and 1 12 bit precision;
     Double32_t      fPtSubtracted[2];        //[0,0,12] pT after subtraction can be negative four momentum close to 0 in this case, 12 bit precision
-    UInt_t         fTrigger;                // Bit mask to flag jets triggered by a certain detector  
+    Double32_t      fPtLeadingConstituent;   //[0,0,12] pT of leading constituent
+    UInt_t          fTrigger;                // Bit mask to flag jets triggered by a certain detector  
     TLorentzVector* fMomentum;               // Jet 4-momentum vector
     TLorentzVector* fVectorAreaCharged;      // jet area four momentum 
     TRefArray*      fRefTracks;              // array of references to the tracks belonging to the jet
 
-    ClassDef(AliAODJet,13);
+
+    ClassDef(AliAODJet,14);
 
 };