]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSCalibrationSSD.cxx
Fix for pre_VTH choice (A. Mastroserio)
[u/mrichter/AliRoot.git] / ITS / AliITSCalibrationSSD.cxx
index 30c1cc43e17b6eb4b13b514e32c6333b4b5120c0..967818940eebcbcdb7443dcb56a402dd2f1cbf05 100644 (file)
 //                                                  //
 //////////////////////////////////////////////////////
 
-const Double_t AliITSCalibrationSSD::fgkNoiseNDefault = 625.;
-const Double_t AliITSCalibrationSSD::fgkNoisePDefault = 420.;
 const Int_t AliITSCalibrationSSD::fgkNParDefault = 6;
-const Double_t AliITSCalibrationSSD::fgkSigmaPDefault = 3.;
-const Double_t AliITSCalibrationSSD::fgkSigmaNDefault = 2.;
 
 ClassImp(AliITSCalibrationSSD)
 
 //______________________________________________________________________
 AliITSCalibrationSSD::AliITSCalibrationSSD():
+  fModule(0),
 fNPar(0),
 fDetPar(0),
-fNoiseP(0),
-fNoiseN(0),
-fSigmaP(0),
-fSigmaN(0),
 fNoise(0),
 fPedestal(),
 fGain(0),
 fBadChannels(0),
-fIsBad(kFALSE),
-fGainP(0),
-fGainN(0),
-fNoisP(0),
-fNoisN(0),
-fPedP(),
-fPedN(),
-fNoisePThreshold(0),
-fNoisyPChannelsList(0),
-fNoiseNThreshold(0),
-fNoisyNChannelsList(0),
-fDeadNChannelsList(0),
-fDeadPChannelsList(0){
+  fIsBad(kFALSE),
+fSSDADCpereV(0.),
+  fKeVperADC(0)
+{
     // Default Constructor
 
-    SetNoiseParam(fgkNoisePDefault,fgkNoiseNDefault);
     for(Int_t i=0;i<fgkChipsPerModule;i++){
       fIsChipBad[i]=kFALSE;
     }
+  SetSSDADCpereV();
+    SetKeVperADC();
 }
 //______________________________________________________________________
 AliITSCalibrationSSD::AliITSCalibrationSSD(const char *dataType):
+  fModule(0),
 fNPar(0),
 fDetPar(0),
-fNoiseP(0),
-fNoiseN(0),
-fSigmaP(0),
-fSigmaN(0),
 fNoise(0),
 fPedestal(0),
 fGain(0),
 fBadChannels(0),
-fIsBad(kFALSE),
-fGainP(0),
-fGainN(0),
-fNoisP(0),
-fNoisN(0),
-fPedP(0),
-fPedN(0),
-fNoisePThreshold(0),
-fNoisyPChannelsList(0),
-fNoiseNThreshold(0),
-fNoisyNChannelsList(0),
-fDeadNChannelsList(0),
-fDeadPChannelsList(0){
+fIsBad(kFALSE) ,
+fSSDADCpereV(0.),
+fKeVperADC(0){
     // constructor
 
-    SetNoiseParam(fgkNoisePDefault,fgkNoiseNDefault);
     SetDataType(dataType);
-    SetSigmaSpread(fgkSigmaPDefault,fgkSigmaNDefault);
     SetNDetParam(fgkNParDefault);   // Sets fNPar=6 by default.
     fDetPar = new Double_t[fNPar];
     if (fNPar==6) {
@@ -106,6 +76,8 @@ fDeadPChannelsList(0){
     for(Int_t i=0;i<fgkChipsPerModule;i++){
       fIsChipBad[i]=kFALSE;
     }
+    SetSSDADCpereV();
+    SetKeVperADC();
 }
 //______________________________________________________________________
 AliITSCalibrationSSD::~AliITSCalibrationSSD(){
@@ -136,11 +108,18 @@ void AliITSCalibrationSSD::GetDetParam(Double_t  *par) const {
 //______________________________________________________________________
 void AliITSCalibrationSSD::FillBadChipMap() {
 
+  // reset
+  fIsBad=kFALSE;
+  for(Int_t i=0;i<fgkChipsPerModule;i++){
+    fIsChipBad[i]=kFALSE;
+  }
+
+
   Int_t mc=0;
-  Int_t cc[12];
+  Int_t cc[fgkChipsPerModule];
 
   // P-side
-  for(Int_t i=0; i<6; i++){
+  for(Int_t i=0; i<fgkChipsPerModule/2; i++){
     cc[i]=0;
     for(Int_t j=0; j<ChannelsPerChip(); j++) {
       if(IsPChannelBad(i*ChannelsPerChip()+j)) cc[i]++;
@@ -149,7 +128,7 @@ void AliITSCalibrationSSD::FillBadChipMap() {
   }
   
   // N-side
-  for(Int_t i=6; i<11; i++){
+  for(Int_t i=fgkChipsPerModule/2; i<fgkChipsPerModule; i++){
     cc[i]=0;
     for(Int_t j=0; j<ChannelsPerChip(); j++) {
       if(IsNChannelBad(1535-i*ChannelsPerChip()-j)) cc[i]++;      
@@ -157,5 +136,5 @@ void AliITSCalibrationSSD::FillBadChipMap() {
     if(cc[i]==ChannelsPerChip()) { SetChipBad(i); mc++; }
   }
   
-  if(mc==ChannelsPerChip()) fIsBad=kTRUE;
+  if(mc==fgkChipsPerModule) fIsBad=kTRUE;
 }