]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
fixing warnings and violations from FC
authorhdalsgaa <hdalsgaa@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 3 Mar 2010 14:28:04 +0000 (14:28 +0000)
committerhdalsgaa <hdalsgaa@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 3 Mar 2010 14:28:04 +0000 (14:28 +0000)
PWG2/FORWARD/analysis/AliFMDAnaCalibEnergyDistribution.cxx
PWG2/FORWARD/analysis/AliFMDAnaParameters.cxx
PWG2/FORWARD/analysis/AliFMDAnaParameters.h
PWG2/FORWARD/analysis/AliFMDAnalysisTaskCollector.cxx
PWG2/FORWARD/analysis/AliFMDAnalysisTaskCollector.h
PWG2/FORWARD/analysis/AliFMDAnalysisTaskSharing.cxx
PWG2/FORWARD/analysis/AliFMDAnalysisTaskSharing.h

index 3a4f5d11531a97c920466bfec8b5ec39764fd2d9..80048a82c16994e7ca15e344a262b1d4dd03cf80 100644 (file)
@@ -94,8 +94,8 @@ TH1F* AliFMDAnaCalibEnergyDistribution::GetRingEnergyDistribution(Int_t det, Cha
 //____________________________________________________________________
 void  AliFMDAnaCalibEnergyDistribution::SetEnergyDistribution(Int_t det, Char_t ring, Float_t eta, TH1F* edist) {
   AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
-  Int_t binnumber =  binnumber = pars->GetEtaBin(eta);
-  std::cout<<binnumber<<std::endl;
+  Int_t binnumber = pars->GetEtaBin(eta);
+  //std::cout<<binnumber<<std::endl;
   SetEnergyDistribution(det, ring, binnumber, edist );
 }
 //____________________________________________________________________
index 4301875162e15d0718a82268d935e8b51ce5fec3..786c3722ff0181c242966815437e7f45ff164090 100644 (file)
@@ -89,6 +89,7 @@ AliFMDAnaParameters::AliFMDAnaParameters() :
   fSPDhighLimit(999999999),
   fCentralSelection(kFALSE)
 {
+  // Default constructor 
   fPhysicsSelection = new AliPhysicsSelection;
   AliBackgroundSelection* backgroundSelection = new AliBackgroundSelection("bg","bg");
   
@@ -96,11 +97,11 @@ AliFMDAnaParameters::AliFMDAnaParameters() :
   //fPhysicsSelection->Initialize(104792);
   // Do not use this - it is only for IO 
   fgInstance = this;
-  // Default constructor 
+  
 }
 //____________________________________________________________________
 char* AliFMDAnaParameters::GetPath(const char* species) {
-  
+  //Get path of object
   char* path = "";
   
   if(species == fgkBackgroundID)
@@ -149,8 +150,8 @@ char* AliFMDAnaParameters::GetPath(const char* species) {
 //____________________________________________________________________
 void AliFMDAnaParameters::Init(Bool_t forceReInit, UInt_t what)
 {
-  // Initialize the parameters manager.  We need to get stuff from the
-  // CDB here. 
+  // Initialize the parameters manager.  We need to get stuff from files here.
+   
   if (forceReInit) fIsInit = kFALSE;
   if (fIsInit) return;
   if (what & kBackgroundCorrection)       InitBackground();
@@ -165,8 +166,7 @@ void AliFMDAnaParameters::Init(Bool_t forceReInit, UInt_t what)
 //____________________________________________________________________
 
 void AliFMDAnaParameters::InitBackground() {
-  
-  //AliCDBEntry*   background = GetEntry(fgkBackgroundCorrection);
+  //Init background correction objects.
   
   TFile* fin = TFile::Open(GetPath(fgkBackgroundID));
   
@@ -180,9 +180,9 @@ void AliFMDAnaParameters::InitBackground() {
 //____________________________________________________________________
 
 void AliFMDAnaParameters::InitEnergyDists() {
-  
+  //Init energy distributions
   TFile* fin = TFile::Open(GetPath(fgkEnergyDistributionID));
-  //AliCDBEntry*   edist = GetEntry(fgkEnergyDists);
+  
   if (!fin) return;
   
   fEnergyDistribution = dynamic_cast<AliFMDAnaCalibEnergyDistribution*>(fin->Get(fgkEnergyDistributionID));
@@ -194,8 +194,8 @@ void AliFMDAnaParameters::InitEnergyDists() {
 //____________________________________________________________________
 
 void AliFMDAnaParameters::InitEventSelectionEff() {
-  
-  //AliCDBEntry*   background = GetEntry(fgkBackgroundCorrection);
+  //Init event selection objects
+
   TFile* fin = TFile::Open(GetPath(fgkEventSelectionEffID));
                            
   if (!fin) return;
@@ -203,12 +203,25 @@ void AliFMDAnaParameters::InitEventSelectionEff() {
   fEventSelectionEfficiency = dynamic_cast<AliFMDAnaCalibEventSelectionEfficiency*>(fin->Get(fgkEventSelectionEffID));
   if (!fEventSelectionEfficiency) AliFatal("Invalid background object from CDB");
   
+}
+
+//____________________________________________________________________
+
+void AliFMDAnaParameters::InitSharingEff() {
+  
+  TFile* fin = TFile::Open(GetPath(fgkSharingEffID));
+                           
+  if (!fin) return;
+  
+  fSharingEfficiency = dynamic_cast<AliFMDAnaCalibSharingEfficiency*>(fin->Get(fgkSharingEffID));
+  if (!fSharingEfficiency) AliFatal("Invalid background object from CDB");
+  
 }
 //____________________________________________________________________
 
 void AliFMDAnaParameters::PrintStatus() const
 {
-  
+  //Print current status
   TString energystring;
   switch(fEnergy) {
   case k900:
@@ -264,22 +277,9 @@ void AliFMDAnaParameters::PrintStatus() const
   
 }
 
-//____________________________________________________________________
-
-void AliFMDAnaParameters::InitSharingEff() {
-  
-  //AliCDBEntry*   background = GetEntry(fgkBackgroundCorrection);
-  TFile* fin = TFile::Open(GetPath(fgkSharingEffID));
-                           
-  if (!fin) return;
-  
-  fSharingEfficiency = dynamic_cast<AliFMDAnaCalibSharingEfficiency*>(fin->Get(fgkSharingEffID));
-  if (!fSharingEfficiency) AliFatal("Invalid background object from CDB");
-  
-}
 //____________________________________________________________________
 Float_t AliFMDAnaParameters::GetVtxCutZ() {
-  
+  //Get the z vtx cut in analysis
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return -1;
@@ -290,7 +290,7 @@ Float_t AliFMDAnaParameters::GetVtxCutZ() {
 
 //____________________________________________________________________
 Int_t AliFMDAnaParameters::GetNvtxBins() {
-  
+  //Get number of vtx bins
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return -1;
@@ -315,7 +315,7 @@ TH1F* AliFMDAnaParameters::GetRingEnergyDistribution(Int_t det, Char_t ring) {
 }
 //____________________________________________________________________
 Float_t AliFMDAnaParameters::GetSigma(Int_t det, Char_t ring, Float_t eta) {
-  
+  //Get sigma of Landau fits
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -334,7 +334,7 @@ Float_t AliFMDAnaParameters::GetSigma(Int_t det, Char_t ring, Float_t eta) {
 
 //____________________________________________________________________
 Float_t AliFMDAnaParameters::GetMPV(Int_t det, Char_t ring, Float_t eta) {
-  
+  //Get MPV of landau fits
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -353,7 +353,7 @@ Float_t AliFMDAnaParameters::GetMPV(Int_t det, Char_t ring, Float_t eta) {
 }
 //____________________________________________________________________
 Float_t AliFMDAnaParameters::GetConstant(Int_t det, Char_t ring, Float_t eta) {
-  
+  //Get constant parameter of Landau fits
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -371,7 +371,7 @@ Float_t AliFMDAnaParameters::GetConstant(Int_t det, Char_t ring, Float_t eta) {
 }
 //____________________________________________________________________
 Float_t AliFMDAnaParameters::Get2MIPWeight(Int_t det, Char_t ring, Float_t eta) {
-  
+  //Get 2 MIP weights of convoluted Landau fits
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -391,7 +391,7 @@ Float_t AliFMDAnaParameters::Get2MIPWeight(Int_t det, Char_t ring, Float_t eta)
 }
 //____________________________________________________________________
 Float_t AliFMDAnaParameters::Get3MIPWeight(Int_t det, Char_t ring, Float_t eta) {
-  
+  //Get 3 MIP weights of convoluted Landau fits
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -441,7 +441,7 @@ Int_t AliFMDAnaParameters::GetEtaBin(Float_t eta) {
 TH2F* AliFMDAnaParameters::GetBackgroundCorrection(Int_t det, 
                                                   Char_t ring, 
                                                   Int_t vtxbin) {
-  
+  //Get background correction histogram
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -460,7 +460,7 @@ TH2F* AliFMDAnaParameters::GetBackgroundCorrection(Int_t det,
 
 TH1F* AliFMDAnaParameters::GetDoubleHitCorrection(Int_t det, 
                                                  Char_t ring) {
-  
+  //Get correction for several hits in strips for p+p
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -470,6 +470,7 @@ TH1F* AliFMDAnaParameters::GetDoubleHitCorrection(Int_t det,
 }
 //_____________________________________________________________________
 Float_t AliFMDAnaParameters::GetEventSelectionEfficiency(Int_t vtxbin) {
+  //Get event selection efficiency object
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -479,6 +480,7 @@ Float_t AliFMDAnaParameters::GetEventSelectionEfficiency(Int_t vtxbin) {
 }
 //_____________________________________________________________________
 TH1F* AliFMDAnaParameters::GetSharingEfficiency(Int_t det, Char_t ring, Int_t vtxbin) {
+  //Get sharing efficiency object
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -489,6 +491,7 @@ TH1F* AliFMDAnaParameters::GetSharingEfficiency(Int_t det, Char_t ring, Int_t vt
 }
 //_____________________________________________________________________
 TH1F* AliFMDAnaParameters::GetSharingEfficiencyTrVtx(Int_t det, Char_t ring, Int_t vtxbin) {
+  //Get sharing efficiency object TrVtx
   if(!fIsInit) {
     AliWarning("Not initialized yet. Call Init() to remedy");
     return 0;
@@ -498,7 +501,8 @@ TH1F* AliFMDAnaParameters::GetSharingEfficiencyTrVtx(Int_t det, Char_t ring, Int
 
 }
 //_____________________________________________________________________
-Float_t AliFMDAnaParameters::GetMaxR(Char_t ring) const{
+Float_t AliFMDAnaParameters::GetMaxR(Char_t ring) const {
+  //Get max R of ring
   Float_t radius = 0;
   if(ring == 'I')
     radius = 17.2;
@@ -511,6 +515,7 @@ Float_t AliFMDAnaParameters::GetMaxR(Char_t ring) const{
 }
 //_____________________________________________________________________
 Float_t AliFMDAnaParameters::GetMinR(Char_t ring) const{
+  //Get min R of ring
   Float_t radius = 0;
   if(ring == 'I')
     radius = 4.5213;
@@ -524,7 +529,7 @@ Float_t AliFMDAnaParameters::GetMinR(Char_t ring) const{
 }
 //_____________________________________________________________________
 void AliFMDAnaParameters::SetCorners(Char_t ring) {
-  
+  //Set corners (taken from nominal geometry)
   if(ring == 'I') {
     fCorner1.Set(4.9895, 15.3560);
     fCorner2.Set(1.8007, 17.2000);
@@ -538,6 +543,7 @@ void AliFMDAnaParameters::SetCorners(Char_t ring) {
 //_____________________________________________________________________
 Float_t AliFMDAnaParameters::GetPhiFromSector(UShort_t det, Char_t ring, UShort_t sec) const
 {
+  //Get phi from sector
   Int_t nsec = (ring == 'I' ? 20 : 40);
   Float_t basephi = 0;
   if(det == 1) 
@@ -568,8 +574,7 @@ Float_t AliFMDAnaParameters::GetPhiFromSector(UShort_t det, Char_t ring, UShort_
 //_____________________________________________________________________
 Float_t AliFMDAnaParameters::GetEtaFromStrip(UShort_t det, Char_t ring, UShort_t sec, UShort_t strip, Float_t zvtx) const
 {
-  // AliFMDRing fmdring(ring);
-  // fmdring.Init();
+  //Calculate eta from strip with vertex (redundant with AliESDFMD::Eta)
   Float_t   rad       = GetMaxR(ring)-GetMinR(ring);
   Float_t   nStrips   = (ring == 'I' ? 512 : 256);
   Float_t   segment   = rad / nStrips;
@@ -606,6 +611,7 @@ Float_t AliFMDAnaParameters::GetEtaFromStrip(UShort_t det, Char_t ring, UShort_t
 
 Bool_t AliFMDAnaParameters::GetVertex(const AliESDEvent* esd, Double_t* vertexXYZ) 
 {
+  //Get the vertex from the ESD
   const AliESDVertex* vertex = 0;
   vertex = esd->GetPrimaryVertexSPD();
   
@@ -626,7 +632,7 @@ Bool_t AliFMDAnaParameters::GetVertex(const AliESDEvent* esd, Double_t* vertexXY
 }
 //____________________________________________________________________
 Bool_t AliFMDAnaParameters::IsEventTriggered(const AliESDEvent *esd, Trigger trig) {
-
+  //Did we have trig trigger ?
   Trigger old = fTrigger;
   fTrigger = trig;
   Bool_t retval = IsEventTriggered(esd);
@@ -687,7 +693,8 @@ Bool_t AliFMDAnaParameters::IsEventTriggered(const AliESDEvent *esd) const {
     break;
   }
   case kEMPTY: {
-     const AliMultiplicity* testmult = esd->GetMultiplicity();
+    /*
+    const AliMultiplicity* testmult = esd->GetMultiplicity();
     Int_t nTrackLets = testmult->GetNumberOfTracklets();
     Int_t nClusters  = testmult->GetNumberOfSingleClusters();
     Int_t fastOR = tAna.SPDFiredChips(esd, 0);
@@ -705,8 +712,9 @@ Bool_t AliFMDAnaParameters::IsEventTriggered(const AliESDEvent *esd) const {
     
     Bool_t v0CBG = tAna.IsOfflineTriggerFired(esd, AliTriggerAnalysis::kV0CBG);
     Bool_t v0A = tAna.IsOfflineTriggerFired(esd, AliTriggerAnalysis::kV0A);
-    Bool_t v0C = tAna.IsOfflineTriggerFired(esd, AliTriggerAnalysis::kV0C);
-    if(triggers.Contains("CINT1A-ABCE-NOPF-ALL") || triggers.Contains("CINT1C-ABCE-NOPF-ALL")) 
+    Bool_t v0C = tAna.IsOfflineTriggerFired(esd, AliTriggerAnalysis::kV0C);*/
+    //    if(triggers.Contains("CINT1A-ABCE-NOPF-ALL") || triggers.Contains("CINT1C-ABCE-NOPF-ALL")) 
+    if(triggers.Contains("CBEAMB-ABCE-NOPF-ALL")) 
       return kTRUE;
     break;
   }
@@ -720,8 +728,7 @@ Bool_t AliFMDAnaParameters::IsEventTriggered(const AliESDEvent *esd) const {
 Float_t 
 AliFMDAnaParameters::GetStripLength(Char_t ring, UShort_t strip)  
 {
-  //AliFMDRing fmdring(ring);
-  // fmdring.Init();
+  //Get length of a strip
   
   Float_t rad        = GetMaxR(ring)-GetMinR(ring);
   Float_t   nStrips   = (ring == 'I' ? 512 : 256);
@@ -766,8 +773,7 @@ AliFMDAnaParameters::GetStripLength(Char_t ring, UShort_t strip)
 Float_t 
 AliFMDAnaParameters::GetBaseStripLength(Char_t ring, UShort_t strip)  
 {  
-  // AliFMDRing fmdring(ring);
-  // fmdring.Init();
+  //Get length of strip assuming that corners are not cut away
   Float_t rad             = GetMaxR(ring)-GetMinR(ring);
   Float_t nStrips         = (ring == 'I' ? 512 : 256);
   Float_t nSec            = (ring == 'I' ? 20 : 40);
index db52e634b1afde738679af596133c0756ed7ace2..7f4cdf66dc6ab9fb6cbaac3ca43221468edf20a5 100644 (file)
@@ -125,15 +125,15 @@ public:
   void     SetCollisionSystem(Species collsystem) {fSpecies = collsystem;}
   void     PrintStatus() const;
   void     Print(Option_t* /* option */) const { PrintStatus(); }
-  char*    GetDndetaAnalysisName() {return "PWG2forwardDnDeta";}
+  char*    GetDndetaAnalysisName() const {return "PWG2forwardDnDeta";}
   TH1F*    GetEnergyDistribution(Int_t det, Char_t ring, Float_t eta);
   TH1F*    GetEmptyEnergyDistribution(Int_t det, Char_t ring);
   TH1F*    GetRingEnergyDistribution(Int_t det, Char_t ring);
-  AliPhysicsSelection* GetPhysicsSelection() {return fPhysicsSelection;}
-  Bool_t   IsRealData() {return fRealData; }
+  AliPhysicsSelection* GetPhysicsSelection() const {return fPhysicsSelection;}
+  Bool_t   IsRealData() const {return fRealData; }
   void     SetRealData(Bool_t realdata) {fRealData = realdata;}
-  Float_t  GetLowSPDLimit() {return fSPDlowLimit;}
-  Float_t  GetHighSPDLimit() {return fSPDhighLimit;}
+  Float_t  GetLowSPDLimit() const {return fSPDlowLimit;}
+  Float_t  GetHighSPDLimit() const {return fSPDhighLimit;}
   void     SetLowSPDLimit(Float_t cut) {fSPDlowLimit = cut;}
   void     SetHighSPDLimit(Float_t cut) {fSPDhighLimit = cut;}
   void     SetCentralTriggerSelection(Bool_t selection) {fCentralSelection = selection;}
@@ -184,16 +184,16 @@ protected:
   Bool_t fIsInit;                      //Have we been init ?
   //TObjArray*  fBackgroundArray;
   // TObjArray*  fEdistArray;
-  AliFMDAnaCalibBackgroundCorrection*         fBackground;   
-  AliFMDAnaCalibEnergyDistribution*           fEnergyDistribution;
-  AliFMDAnaCalibEventSelectionEfficiency*     fEventSelectionEfficiency;
-  AliFMDAnaCalibSharingEfficiency*            fSharingEfficiency;
+  AliFMDAnaCalibBackgroundCorrection*         fBackground;  //BG correction object 
+  AliFMDAnaCalibEnergyDistribution*           fEnergyDistribution; //Energy dist object
+  AliFMDAnaCalibEventSelectionEfficiency*     fEventSelectionEfficiency; //Event selection correction object
+  AliFMDAnaCalibSharingEfficiency*            fSharingEfficiency; //Sharing efficiency correction object
   //static const char* fgkBackgroundCorrection;
   //static const char* fgkEnergyDists;
-  static const char* fgkBackgroundID;
-  static const char* fgkEnergyDistributionID ;
-  static const char* fgkEventSelectionEffID ;
-  static const char* fgkSharingEffID ;
+  static const char* fgkBackgroundID;           // BG cor ID
+  static const char* fgkEnergyDistributionID ;  // Energy dist ID
+  static const char* fgkEventSelectionEffID ;   // Event selection ID
+  static const char* fgkSharingEffID ;          // Sharing efficiency ID  
   
   TVector2 fCorner1;                  //First corner of hybrid
   TVector2 fCorner2;                  //Second corner of hybrid
@@ -207,7 +207,7 @@ protected:
   Energy   fEnergy;                   // CM energy
   MagField fMagField;                 //Magnetic field
   Species  fSpecies;                  //PbPb or pp ?
-  AliPhysicsSelection* fPhysicsSelection; 
+  AliPhysicsSelection* fPhysicsSelection;  //Physics selection
   Bool_t   fRealData;                 // real or simulated
   Float_t  fSPDlowLimit ;             // low limit of SPD tracklets
   Float_t  fSPDhighLimit ;             // high limit of SPD tracklets
index eeba817b2ef10898a16957c22edc43de434d0a9c..832e1ede065883ee4c00888cdd1bc3ddb8b2abc2 100644 (file)
@@ -68,9 +68,7 @@ AliFMDAnalysisTaskCollector::AliFMDAnalysisTaskCollector()
   fOutputList(0),
   fArray(0),
   fZvtxDist(0),
-  fEvents(0),
-  fEmptyEventsAside(0),
-  fEmptyEventsCside(0)
+  fEvents(0)
 {
   // Default constructor
   
@@ -83,9 +81,7 @@ AliFMDAnalysisTaskCollector::AliFMDAnalysisTaskCollector(const char* name):
     fOutputList(0),
     fArray(0),
     fZvtxDist(0),
-    fEvents(0),
-    fEmptyEventsAside(0),
-    fEmptyEventsCside(0)
+    fEvents(0)
 {
   // Default constructor
   
@@ -163,10 +159,7 @@ void AliFMDAnalysisTaskCollector::UserExec(Option_t */*option*/)
   //Bool_t trigger = pars->IsEventTriggered(esd);
   
   Bool_t physics = pars->IsEventTriggered(esd);
-  //Bool_t empty   = pars->IsEventTriggered(esd,AliFMDAnaParameters::kEMPTY);
-  Bool_t emptyAside = triggers.Contains("CINT1A-ABCE-NOPF-ALL");
-  Bool_t emptyCside = triggers.Contains("CINT1C-ABCE-NOPF-ALL");
-  
+  Bool_t empty   = pars->IsEventTriggered(esd,AliFMDAnaParameters::kEMPTY);
   //std::cout<<physics<<"   "<<empty<<std::endl;
   //if(!trigger)
   //  physics = kFALSE;
@@ -186,12 +179,10 @@ void AliFMDAnalysisTaskCollector::UserExec(Option_t */*option*/)
   if (!fmd) return;
   if(physics)
     fEvents++;
-  else if(emptyAside) 
-    fEmptyEventsAside++;
-  else if(emptyCside) 
-    fEmptyEventsCside++;
+  else if(empty)
+    fEmptyEvents++;
   
-  if(!physics && !emptyAside && !emptyCside)
+  if(!physics && !empty)
     return;
   TH1F* Edist = 0;
   TH1F* emptyEdist = 0;
@@ -222,27 +213,14 @@ void AliFMDAnalysisTaskCollector::UserExec(Option_t */*option*/)
            Edist->Fill(mult);
            ringEdist->Fill(mult);
          }
-         if(emptyAside && det == 3 /*&& ring == 'O'*/) {
+         else if(empty) {
            emptyEdist->Fill(mult);
+           
          }
-         //if(emptyCside && det == 3 && ring == 'I') {
-         //  emptyEdist->Fill(mult);
-         //}
-         
-         
-
-         if((emptyAside || emptyCside) && !(det == 3 /*&& ring == 'O'*/)/* && !(det == 2 && ring == 'O')*/) {
-           emptyEdist->Fill(mult);
+         else {
+           AliWarning("Something is wrong - wrong trigger");
+           continue;
          }
-         //if(emptyCside && det == 2 && ring == 'O') {
-         //  emptyEdist->Fill(mult);
-         // }
-        
-                 
-         //else {
-         //  AliWarning("Something is wrong - wrong trigger");
-         //  continue;
-         //}
         
          
        }
@@ -256,7 +234,7 @@ void AliFMDAnalysisTaskCollector::UserExec(Option_t */*option*/)
 //____________________________________________________________________
   
 void AliFMDAnalysisTaskCollector::Terminate(Option_t */*option*/) {
-  std::cout<<"Analysed "<<fEvents<<" events and "<<fEmptyEventsAside<<" empty from A side and "<<fEmptyEventsCside<<"  on the C side"<<std::endl;
+  std::cout<<"Analysed "<<fEvents<<" events and "<<fEmptyEvents<<" empty"<<std::endl;
   AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
  
     
@@ -267,16 +245,8 @@ void AliFMDAnalysisTaskCollector::Terminate(Option_t */*option*/) {
        Char_t ringChar = (ring == 0 ? 'I' : 'O');
        TH1F* hRingEdist = (TH1F*)fOutputList->FindObject(Form("ringFMD%d%c",det,ringChar));
        TH1F* hEmptyEdist = (TH1F*)fOutputList->FindObject(Form("emptyFMD%d%c",det,ringChar));
-       if(fEmptyEventsAside && det == 3 /*&& ringChar == 'O'*/)
-         hEmptyEdist->Scale(1./(Float_t)fEmptyEventsAside);
-       
-       //if(fEmptyEventsAside && det == 3 && ringChar == 'I')
-       //  hEmptyEdist->Scale(1./(Float_t)fEmptyEventsCside);
-       //if(fEmptyEventsAside && det == 2 && ringChar == 'O') //A side
-       //  hEmptyEdist->Scale(1./(Float_t)fEmptyEventsAside);
-       
-       if((fEmptyEventsAside != 0 || fEmptyEventsCside !=0) && !(det == 3/* && ringChar == 'O'*/)/* && !(det == 2 && ringChar == 'O')*/)
-         hEmptyEdist->Scale(1./((Float_t)fEmptyEventsAside + ((Float_t)fEmptyEventsCside)));
+       if(fEmptyEvents)
+         hEmptyEdist->Scale(1./(Float_t)fEmptyEvents);
        
        if(fEvents)
          hRingEdist->Scale(1./(Float_t)fEvents);
index 15ce92dc28b8590e2ab3c32d4b7ae333629d8e05..e654083510b205bed97bc1c47df0038efbb2b587 100644 (file)
@@ -25,7 +25,9 @@ class AliFMDAnalysisTaskCollector : public AliAnalysisTaskSE
     fDebug(o.fDebug),
     fOutputList(o.fOutputList),
     fArray(o.fArray),
-    fZvtxDist(o.fZvtxDist)  {}
+    fZvtxDist(o.fZvtxDist),
+    fEvents(0),
+    fEmptyEvents(0)    {}
   
   AliFMDAnalysisTaskCollector& operator=(const AliFMDAnalysisTaskCollector&) { return *this; }
   virtual ~AliFMDAnalysisTaskCollector() {;}
@@ -46,8 +48,7 @@ private:
   TObjArray*    fArray;
   TH1F*         fZvtxDist;
   Int_t         fEvents;
-  Int_t         fEmptyEventsAside;
-  Int_t         fEmptyEventsCside;
+  Int_t         fEmptyEvents;
   ClassDef(AliFMDAnalysisTaskCollector, 0); // Analysis task for FMD analysis
 };
  
index e8862ac2637165ab2b0ccd52514b99ae736b463e..6898a734bee16b51fdd22d36dcfe478023759f96 100644 (file)
@@ -51,7 +51,8 @@ AliFMDAnalysisTaskSharing::AliFMDAnalysisTaskSharing()
   fStandalone(kTRUE),
   fEsdVertex(0),
   fStatus(kTRUE),
-  fLastTrackByStrip(0)
+  fLastTrackByStrip(0),
+  fLastOrbit(0)
 {
   // Default constructor
   DefineInput (0, AliESDEvent::Class());
@@ -73,7 +74,7 @@ AliFMDAnalysisTaskSharing::AliFMDAnalysisTaskSharing(const char* name, Bool_t SE
     fEsdVertex(0),
     fStatus(kTRUE),
     fLastTrackByStrip(0),
-    fEtotal(0)
+    fLastOrbit(0)
 {
   // named constructor
   fStandalone = SE;
@@ -227,6 +228,9 @@ fDiagList->Add(hCorrelationFMDSPDhits);
   TH1F*  hTrEtaDistribution2 = new TH1F("hTrEtaDistribution2","hTrEtaDistribution2 ; TrEta",200,-9,9);
   
  TH1F*  hFlatTracks = new TH1F("hFlatTracks","hFlatTracks ; Horizontal tracks",100,0,100);
+ TH1F* hEnergyOfParticles = new TH1F("hEnergyOfParticles","hEnergyOfParticles",1000000,0,10);
+ fDiagList->Add(hEnergyOfParticles);
  fDiagList->Add(hTrVtxDistribution);
  fDiagList->Add(hTrEtaDistribution);
  fDiagList->Add(hTrEtaDistribution2);
@@ -508,7 +512,7 @@ void AliFMDAnalysisTaskSharing::Exec(Option_t */*option*/)
   hCorrelationFMDBgCandRelative->Fill(ratioBg,nTotalFMDhits);
   
   
-   Float_t ratio =  (nbad > 0 ? ngood / nbad  : 0);
+  // Float_t ratio =  (nbad > 0 ? ngood / nbad  : 0);
   
   hCorrelationFMDGoodtracks->Fill(ngood,nTotalFMDhits);
   hCorrelationFMDBadtracks->Fill(nbad,nTotalFMDhits);
@@ -538,6 +542,7 @@ Float_t AliFMDAnalysisTaskSharing::GetMultiplicityOfStrip(Float_t mult,
   Float_t cutLow  = 0.3;//0.15;
   
   Float_t cutHigh = pars->GetMPV(det,ring,eta) - 2*pars->GetSigma(det,ring,eta);
+
   // if(ring == 'I')
   //  cutLow = 0.1;
   
@@ -692,7 +697,7 @@ Float_t AliFMDAnalysisTaskSharing::Eta2Theta(Float_t eta) const{
 
 //_____________________________________________________________________
 void AliFMDAnalysisTaskSharing::ProcessPrimary() {
-  //Get the undspoiled MC dN/deta before event cuts
+  //Get the unspoiled MC dN/deta before event cuts
   AliMCEventHandler* eventHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
   AliMCEvent* mcEvent = eventHandler->MCEvent();
   if(!mcEvent)
@@ -705,6 +710,7 @@ void AliFMDAnalysisTaskSharing::ProcessPrimary() {
   AliStack* stack = mcEvent->Stack();
   
   TH1F* hPrimary = (TH1F*)fDiagList->FindObject("hMultvsEtaNoCuts");
+  TH1F* hEnergyOfParticles = (TH1F*)fDiagList->FindObject("hEnergyOfParticles");
   AliHeader* header            = mcEvent->Header();
   AliGenEventHeader* genHeader = header->GenEventHeader();
   
@@ -713,10 +719,10 @@ void AliFMDAnalysisTaskSharing::ProcessPrimary() {
   if (!pythiaGenHeader) {
     std::cout<<" no pythia header!"<<std::endl;
     return; 
-       }
+  }
 
        
-  Int_t pythiaType = pythiaGenHeader->ProcessType();
+  //Int_t pythiaType = pythiaGenHeader->ProcessType();
   
   //if(pythiaType==92||pythiaType==93){
     //  std::cout<<"single diffractive"<<std::endl;
@@ -770,6 +776,9 @@ void AliFMDAnalysisTaskSharing::ProcessPrimary() {
        Char_t   ring;
        if(ref->DetectorId() != AliTrackReference::kFMD)
          continue;
+       if(particle->Charge() != 0)
+         hEnergyOfParticles->Fill(particle->E());
+       
        AliFMDStripIndex::Unpack(ref->UserId(),det,ring,sec,strip);
        Float_t thisStripTrack = fLastTrackByStrip(det,ring,sec,strip);
        if(particle->Charge() != 0 && i != thisStripTrack ) {
index 49d8313d9a6495abcb8e321efa970c670ddcb556..bc68e6c507fe37a98277fe26b3f17efe5b1d5d93 100644 (file)
@@ -38,7 +38,8 @@ class AliFMDAnalysisTaskSharing : public AliAnalysisTask
       fStandalone(o.fStandalone),
       fEsdVertex(o.fEsdVertex),
       fStatus(o.fStatus),
-      fLastTrackByStrip(o.fLastTrackByStrip) {}
+      fLastTrackByStrip(o.fLastTrackByStrip),
+      fLastOrbit(o.fLastOrbit) {}
     AliFMDAnalysisTaskSharing& operator=(const AliFMDAnalysisTaskSharing&) { return *this; }
     
     // Implementation of interface methods
@@ -75,7 +76,7 @@ class AliFMDAnalysisTaskSharing : public AliAnalysisTask
     Bool_t        fStatus;            // event status
     AliFMDFloatMap fLastTrackByStrip; // the last track to hit this strip
     UInt_t          fLastOrbit;
-    Float_t fEtotal;
+    
     ClassDef(AliFMDAnalysisTaskSharing, 0); // Analysis task for FMD analysis
 };