// //
//////////////////////////////////////////////////////
-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) {
for(Int_t i=0;i<fgkChipsPerModule;i++){
fIsChipBad[i]=kFALSE;
}
+ SetSSDADCpereV();
+ SetKeVperADC();
}
//______________________________________________________________________
AliITSCalibrationSSD::~AliITSCalibrationSSD(){
//______________________________________________________________________
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]++;
}
// 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]++;
if(cc[i]==ChannelsPerChip()) { SetChipBad(i); mc++; }
}
- if(mc==ChannelsPerChip()) fIsBad=kTRUE;
+ if(mc==fgkChipsPerModule) fIsBad=kTRUE;
}