Float_t GetAPDNoise() const { return fAPDNoise; } //RMS of APD noise
void SetAPDNoise(Float_t noise=0.012){fAPDNoise = noise; }
+ //Parameters to apply non-lineary on cell level
+ Bool_t IsCellNonlinearityOn() const {return fCellNonLineaityOn;}
+ void SetCellNonLinearity(Bool_t on=kTRUE){fCellNonLineaityOn=on;} //default: on=kFALSE
+ Double_t GetCellNonLineairyA(void) const {return fCellNonLineaityA; }
+ Double_t GetCellNonLineairyB(void) const {return fCellNonLineaityB; }
+ Double_t GetCellNonLineairyC(void) const {return fCellNonLineaityC; }
+ void SetCellNonLineairyA(Double_t a=0.30) {fCellNonLineaityA = a; }
+ void SetCellNonLineairyB(Double_t b=0.109){fCellNonLineaityB = b; }
+ void SetCellNonLineairyC(Double_t c=0.955){fCellNonLineaityC = c; }
+
+
+
Float_t GetEmcDigitsThreshold() const { return fEMCDigitThreshold ; } //Minimal energy to keep digit
void SetEMCDigitsThreshold(Float_t thresh=0.01){fEMCDigitThreshold=thresh;}
void SetStreamDigits(Int_t i){if(i<10)fDStream[i]=kTRUE;}
Bool_t IsStreamDigits(Int_t i){return fDStream[i]; }
+ //Parameters for RAW embedding
+ void SetEMCSubtractPedestals(Bool_t subtract) { fEMCSubtractPedestals = subtract;}
+ Bool_t EMCSubtractPedestals() const { return fEMCSubtractPedestals; }
+
+ void SetGlobalAltroOffset(Int_t offset) { fGlobalAltroOffset = offset ; }
+ Int_t GetGlobalAltroOffset() const { return fGlobalAltroOffset ; }
+
+ void SetGlobalAltroThreshold(Int_t ZSth) { fGlobalAltroThreshold = ZSth; }
+ Int_t GetGlobalAltroThreshold() const { return fGlobalAltroThreshold;}
+
+ void SetSampleQualityCut(Float_t qcut) { fEMCSampleQualityCut=qcut; }
+ Float_t GetEMCSampleQualityCut() const { return fEMCSampleQualityCut; }
+
private:
AliPHOSSimParam(Int_t i); //True constructor which should be called by GetInstance()
Float_t fEMCADCchannel ; //width of ADC channel in GeV
Float_t fTOFa ; //constant term of TOF resolution
Float_t fTOFb ; //stohastic term of TOF resolution
+ Float_t fCellNonLineaityA ; //Amp of cel non-linearity
+ Float_t fCellNonLineaityB ; //Energy scale of cel non-linearity
+ Float_t fCellNonLineaityC ; //Overall calibration
+
+ //Parameters used for RAW embedding
+ Bool_t fEMCSubtractPedestals; // true if pedestal should be subtracted (in non-ZS)
+ Int_t fGlobalAltroOffset ; // Offset used in ALTRO chips in SZ runs
+ Int_t fGlobalAltroThreshold ; // Threshold used in ALTRO chips in SZ runs
+ Float_t fEMCSampleQualityCut; // Cut on pulse shape fit quality
//CPV parameters
Float_t fADCpedestalCpv ; //Pedestal value
Bool_t fDStream[10] ; //Mark mixing stream contains digits or SDigits
Bool_t fDigitizeE ; //Use energy digitization in simulation or left to Digits2Raw()
-
+ Bool_t fCellNonLineaityOn ; //Model scintillator non-linearity in AliPHOSDigitizer
+
static AliPHOSSimParam * fgSimParam ; // pointer to the unique instance of the class
- ClassDef(AliPHOSSimParam,1)
+ ClassDef(AliPHOSSimParam,3)
};
#endif