Reco parameters were adjusted to make consistent a reconstruction
authorkharlov <kharlov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 27 Jan 2009 18:14:10 +0000 (18:14 +0000)
committerkharlov <kharlov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 27 Jan 2009 18:14:10 +0000 (18:14 +0000)
of simulated digits and simulated raw data

PHOS/AliPHOSRawDigiProducer.cxx
PHOS/AliPHOSRecoParam.cxx
PHOS/AliPHOSRecoParam.h
PHOS/AliPHOSReconstructor.cxx
PHOS/Calib/RecoParam/Run0_999999999_v0_s0.root
PHOS/MakePHOSRecoParam.C

index 2e214ba..60098cc 100644 (file)
@@ -74,7 +74,7 @@ AliPHOSRawDigiProducer::AliPHOSRawDigiProducer(const AliPHOSRecoParam* recoParam
 
   if(!recoParam) AliFatal("Reconstruction parameters are not set!");
 
-  fEmcMinE = recoParam->GetEMCMinE();
+  fEmcMinE = recoParam->GetEMCRawDigitThreshold();
   fCpvMinE = recoParam->GetCPVMinE();
   fSampleQualityCut = recoParam->GetEMCSampleQualityCut() ;
   fGlobalAltroOffset = recoParam->GetGlobalAltroOffset() ;
index 8b37915..d2ae8ec 100644 (file)
@@ -34,7 +34,8 @@ AliPHOSRecoParam::AliPHOSRecoParam() :
   AliDetectorRecoParam(),
   fEMCClusteringThreshold(0.2),
   fEMCLocMaxCut(0.03),
-  fEMCMinE(2.),
+  fEMCRawDigitThreshold(2),
+  fEMCMinE(0.012),
   fEMCW0(4.5),
   fEMCSampleQualityCut(1.),
   fEMCEcoreRadius(3.),
@@ -58,7 +59,8 @@ AliPHOSRecoParam::AliPHOSRecoParam(const AliPHOSRecoParam& ):
   AliDetectorRecoParam(),
   fEMCClusteringThreshold(0.2),
   fEMCLocMaxCut(0.03),
-  fEMCMinE(2.),
+  fEMCRawDigitThreshold(2),
+  fEMCMinE(0.012),
   fEMCW0(4.5),
   fEMCSampleQualityCut(1.),
   fEMCEcoreRadius(3.),
@@ -85,6 +87,7 @@ AliPHOSRecoParam& AliPHOSRecoParam::operator = (const AliPHOSRecoParam& recoPara
   if(this != &recoParam) {
     fEMCClusteringThreshold = recoParam.fEMCClusteringThreshold;
     fEMCLocMaxCut           = recoParam.fEMCLocMaxCut;
+    fEMCRawDigitThreshold   = recoParam.fEMCRawDigitThreshold;
     fEMCMinE                = recoParam.fEMCMinE;
     fEMCW0                  = recoParam.fEMCW0;
     fEMCSampleQualityCut    = recoParam.fEMCSampleQualityCut;
@@ -111,6 +114,7 @@ void AliPHOSRecoParam::Print(Option_t * /*option*/) const
   AliDebug(2,Form("PHOS reconstruction parameters:\n"
                  "\tEMCClusteringThreshold = %f\n"
                  "\tEMCLocMaxCut           = %f\n"
+                 "\tEMCRawDigitThreshold   = %f\n"
                  "\tEMCMinE                = %f\n"
                  "\tEMCW0                  = %f\n"
                  "\tEMCSampleQualityCut    = %f\n"
@@ -123,6 +127,7 @@ void AliPHOSRecoParam::Print(Option_t * /*option*/) const
                  "\tGlobalAltroOffset      = %d",
                  fEMCClusteringThreshold,
                  fEMCLocMaxCut,
+                 fEMCRawDigitThreshold,
                  fEMCMinE,
                  fEMCW0,
                  fEMCSampleQualityCut,
index 7e71cdc..6ec974c 100644 (file)
@@ -21,6 +21,7 @@ public:
 
   Float_t GetEMCClusteringThreshold() const { return fEMCClusteringThreshold;  }
   Float_t GetEMCLocalMaxCut()         const { return fEMCLocMaxCut;            }
+  Float_t GetEMCRawDigitThreshold()   const { return fEMCRawDigitThreshold;  }
   Float_t GetEMCMinE()                const { return fEMCMinE;                 }
   Float_t GetEMCLogWeight()           const { return fEMCW0;                   }
   Float_t GetEMCSampleQualityCut()    const { return fEMCSampleQualityCut;     }
@@ -40,6 +41,7 @@ public:
 
   void SetEMCClusteringThreshold(Float_t cluth)      { fEMCClusteringThreshold=cluth;   }
   void SetEMCLocalMaxCut(Float_t cut)                { fEMCLocMaxCut          =cut;     }
+  void SetEMCRawDigitThreshold(Float_t rawDigTh)     { fEMCRawDigitThreshold  =rawDigTh;}
   void SetEMCMinE(Float_t minE)                      { fEMCMinE               =minE;    }
   void SetEMCLogWeight(Float_t w)                    { fEMCW0                 =w;       }
   void SetEMCSampleQualityCut(Float_t qu)            { fEMCSampleQualityCut   =qu;      }
@@ -57,7 +59,7 @@ public:
   void SetCPVLogWeight(Float_t w)                    { fCPVW0                 =w;       }
   void SetCPVUnfolding(Bool_t toUnfold=kFALSE)       { fCPVUnfold            =toUnfold;}
 
-  virtual void Print(const Option_t *option="") const;
+  virtual void Print(const Option_t *option="RecoParam") const;
 
   static AliPHOSRecoParam* GetDefaultParameters();
   static const  TObjArray* GetMappings();
@@ -66,7 +68,8 @@ protected:
 
   Float_t fEMCClusteringThreshold; // EMC: Min.digit energy to start a new cluster, in GeV
   Float_t fEMCLocMaxCut;           // EMC: Min.energy difference between two local maxima, in GeV
-  Float_t fEMCMinE;                // EMC: Min.E in the digits list associated with rec.point, in ADC counts
+  Float_t fEMCRawDigitThreshold;   // EMC: Min.amplitude of a digit produced from raw data in ADC
+  Float_t fEMCMinE;                // EMC: Min.E in the digits list associated with rec.point, in GeV
   Float_t fEMCW0;                  // EMC: Log.weight to evaluate a local coordinate of rec.point
   Float_t fEMCSampleQualityCut;    // EMC: Cut on pulse shape fit quality
   Float_t fEMCEcoreRadius;         // EMC: Radius within which the core energy is calculated, in cm
@@ -85,7 +88,7 @@ protected:
 
   static TObjArray* fgkMaps;       // ALTRO mappings for RCU0..RCU3
 
-  ClassDef(AliPHOSRecoParam,8)
+  ClassDef(AliPHOSRecoParam,9)
 };
 
 #endif
index 2de1be7..f86f86f 100644 (file)
@@ -231,9 +231,8 @@ void AliPHOSReconstructor::FillESD(TTree* digitsTree, TTree* clustersTree,
   // Add to CaloCells only EMC digits with non-zero energy 
   for (Int_t idig = 0 ; idig < nDigits ; idig++) {
     const AliPHOSDigit * dig = (const AliPHOSDigit*)fgDigitsArray->At(idig);
-    if(dig->GetId() <= knEMC && dig->GetEnergy() > GetRecoParam()->GetEMCMinE() ){
-//      printf("i %d; id %d; amp %f; new E %f time %e\n",
-//      idignew,dig->GetId(),dig->GetEnergy(),Calibrate(dig->GetEnergy(),dig->GetId()), dig->GetTime());
+    if(dig->GetId() <= knEMC && 
+       Calibrate(dig->GetEnergy(),dig->GetId()) > GetRecoParam()->GetEMCMinE() ){
       phsCells.SetCell(idignew,dig->GetId(), Calibrate(dig->GetEnergy(),dig->GetId()), dig->GetTime());   
       idignew++;
     }
index a4154af..9a6415c 100644 (file)
Binary files a/PHOS/Calib/RecoParam/Run0_999999999_v0_s0.root and b/PHOS/Calib/RecoParam/Run0_999999999_v0_s0.root differ
index e160bfc..b490726 100644 (file)
@@ -21,9 +21,11 @@ void MakePHOSRecoParam(AliRecoParam::EventSpecie_t default=AliRecoParam::kDefaul
     AliPHOSRecoParam * phosRecoParam = AliPHOSRecoParam::GetDefaultParameters();
     phosRecoParam->SetEventSpecie(AliRecoParam::kDefault);
     phosRecoParam->SetEMCSubtractPedestals(kFALSE);
-    phosRecoParam->SetEMCMinE(0.045);
+    phosRecoParam->SetEMCRawDigitThreshold(2);
+    phosRecoParam->SetEMCMinE(0.012);
     phosRecoParam->SetEMCClusteringThreshold(0.20);
     phosRecoParam->SetEMCDecoderVersion("v1");
+    phosRecoParam->SetEMCSampleQualityCut(10.);
     recoParamArray->AddLast(phosRecoParam);
   }
   {