void SetMinBaseline(Float_t bas=10.){fMinBaseline=bas;}
void SetMaxBaseline(Float_t bas=150.){fMaxBaseline=bas;}
- void SetMinRawNoise(Float_t ns=0.001){fMinRawNoise=ns;}
+ void SetMinRawNoise(Float_t ns=0.5){fMinRawNoise=ns;}
void SetMaxRawNoise(Float_t ns=9.){fMaxRawNoise=ns;}
void SetNSigmaNoise(Float_t ns=4.){fNSigmaNoise=ns;}
void SetGoldenBaselineValue(Float_t val=20.){fGoldenBaseline=val;}
}
void GetMinAndMaxBaseline(Float_t &basMin, Float_t &basMax) const;
Float_t GetMinimumBaseline() const;
- Float_t GetAnodeRawNoise(Int_t iAnode) const{
- if(fNEvents>0) return TMath::Sqrt(fSumRawNoise[iAnode]/fNEvents-TMath::Power(GetAnodeBaseline(iAnode),2));
-
- else return 0;
- }
+ Float_t GetAnodeRawNoise(Int_t iAnode) const;
+ Int_t CountGoodAnodes() const{
+ Int_t nGdAn=0;
+ for(Int_t ian=0;ian<fgkNAnodes;ian++) if(fGoodAnode[ian]) nGdAn++;
+ return nGdAn;
+ }
Float_t CalcMeanRawNoise() const;
Float_t GetAnodeCommonMode(Int_t iAnode) const{
if(fNEvents>0) return fSumCMN[iAnode]/fNEvents;
ClassDef(AliITSOnlineSDDBase,2);
};
+
+inline Float_t AliITSOnlineSDDBase::GetAnodeRawNoise(Int_t iAnode) const{
+ // compute raw noise for given anode
+ Float_t noise2=0.;
+ if(fNEvents>0) noise2=fSumRawNoise[iAnode]/fNEvents-fSumBaseline[iAnode]*fSumBaseline[iAnode]/fNEvents/fNEvents;
+ if(noise2>0.) return TMath::Sqrt(noise2);
+ else return 0;
+}
+
#endif