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),
// Default Constructor
SetNoiseParam(fgkNoisePDefault,fgkNoiseNDefault);
+ for(Int_t i=0;i<fgkChipsPerModule;i++){
+ fIsChipBad[i]=kFALSE;
+ }
}
//______________________________________________________________________
AliITSCalibrationSSD::AliITSCalibrationSSD(const char *dataType):
fPedestal(0),
fGain(0),
fBadChannels(0),
+fIsBad(kFALSE),
fGainP(0),
fGainN(0),
fNoisP(0),
fDetPar[4]=0.02;
fDetPar[5]=0.03;
} // end if
+ for(Int_t i=0;i<fgkChipsPerModule;i++){
+ fIsChipBad[i]=kFALSE;
+ }
}
//______________________________________________________________________
AliITSCalibrationSSD::~AliITSCalibrationSSD(){
// destructor
-
+
delete [] fDetPar;
}
//______________________________________________________________________
par[i]=fDetPar[i];
} // end for i
}
+
+//______________________________________________________________________
+void AliITSCalibrationSSD::FillBadChipMap() {
+
+ Int_t mc=0;
+ Int_t cc[12];
+
+ // P-side
+ for(Int_t i=0; i<6; i++){
+ cc[i]=0;
+ for(Int_t j=0; j<ChannelsPerChip(); j++) {
+ if(IsPChannelBad(i*ChannelsPerChip()+j)) cc[i]++;
+ }
+ if(cc[i]==ChannelsPerChip()) { SetChipBad(i); mc++; }
+ }
+
+ // N-side
+ for(Int_t i=6; i<11; i++){
+ cc[i]=0;
+ for(Int_t j=0; j<ChannelsPerChip(); j++) {
+ if(IsNChannelBad(1535-i*ChannelsPerChip()-j)) cc[i]++;
+ }
+ if(cc[i]==ChannelsPerChip()) { SetChipBad(i); mc++; }
+ }
+
+ if(mc==ChannelsPerChip()) fIsBad=kTRUE;
+}