New function GenerateTresholds() for pedestal simulation.
authordibari <dibari@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 30 Jun 2000 16:48:58 +0000 (16:48 +0000)
committerdibari <dibari@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 30 Jun 2000 16:48:58 +0000 (16:48 +0000)
RICH/AliRICHChamber.cxx
RICH/AliRICHChamber.h

index ae73f85..288e589 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
   $Log$
+  Revision 1.3  2000/06/12 15:17:58  jbarbosa
+  Cleaned up version.
+
   Revision 1.2  2000/05/18 13:45:57  jbarbosa
   Fixed feedback photon origin coordinates
 
@@ -39,11 +42,13 @@ AliRICHChamber::AliRICHChamber()
 // Chamber object constructor
 
     fSegmentation = 0;
-    fResponse= 0;
-    fGeometry= 0;
-    frMin=0.1;
-    frMax=140;
-    fnsec=1;
+    fResponse = 0;
+    fGeometry = 0;
+    fTresh = 0;
+    frMin = 0.1;
+    frMax = 140;
+    fnsec = 1;
+    fIndexMap[50] = 0;
 }
 
 AliRICHChamber::AliRICHChamber(const AliRICHChamber& Chamber)
@@ -203,3 +208,33 @@ AliRICHChamber& AliRICHChamber::operator=(const AliRICHChamber& rhs)
 }
 
 
+void AliRICHChamber::GenerateTresholds()
+{
+
+// Generates random treshold charges for all pads 
+
+  //printf("Pads : %dx%d\n",fSegmentation->Npx(),fSegmentation->Npy());
+
+  Int_t nx = fSegmentation->Npx();
+  Int_t ny = fSegmentation->Npy();
+
+  //Int_t size=nx*ny;
+
+  //printf("Size:%d\n",size);
+
+  fTresh = new AliRICHTresholdMap(fSegmentation);
+
+  //printf("Generating tresholds...\n");
+
+  for(Int_t i=-nx/2;i<nx/2;i++)
+    {
+      for(Int_t j=-ny/2;j<ny/2;j++)
+       {
+         Int_t pedestal = (Int_t)(gRandom->Gaus(50, 10));
+         //Int_t pedestal =0;
+         fTresh->SetHit(i,j,pedestal);
+         //printf("Pad %d %d has pedestal %d.\n",i,j,pedestal);
+       }
+    }
+      
+}
index 0b37632..9e9b103 100644 (file)
@@ -9,6 +9,7 @@
 #include <TObjArray.h>
 #include <TRotMatrix.h>
 
+#include "AliRICHTresholdMap.h"
 #include "AliRICHSegmentation.h"
 #include "AliRICHGeometry.h"
 #include "AliRICHResponse.h"
@@ -21,6 +22,9 @@ class AliRICHChamber : public TObject
 {
  public:
     
+  Int_t                fIndexMap[50];   //indeces of tresholds
+  AliRICHTresholdMap*  fTresh;          //map of tresholds
+
  public:
     AliRICHChamber();
     AliRICHChamber(const AliRICHChamber & Chamber);
@@ -49,6 +53,11 @@ class AliRICHChamber : public TObject
 //Transformation from Global to local coordinates, chamber-dependant
     void LocaltoGlobal(Float_t pos[3],Float_t Localpos[3]);
     void GlobaltoLocal(Float_t pos[3],Float_t localpos[3]); 
+
+//Generate pad dependent tresholds
+
+    void GenerateTresholds();
+
     
 //Setting chamber specific rotation matrices