1 #ifndef ALIRICHRESPONSEV0_H
2 #define ALIRICHRESPONSEV0_H
5 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 * See cxx source for full Copyright notice */
11 #include "AliRICHResponse.h"
14 class AliSegmentation;
17 class AliRICHResponseV0 : public AliRICHResponse
20 AliRICHResponseV0(); // default ctor
21 virtual ~AliRICHResponseV0(){}
23 virtual inline void Print(Option_t* option)const;
25 // Configuration methods
27 // Number of sigmas over which cluster didintegration is performed
28 virtual void SetSigmaIntegration(Float_t p1) {fSigmaIntegration=p1;}
29 virtual Float_t SigmaIntegration() {return fSigmaIntegration;}
30 // charge slope in ADC/e
31 virtual void SetChargeSlope(Float_t p1) {fChargeSlope=p1;}
32 virtual Float_t ChargeSlope() {return fChargeSlope;}
33 // sigma of the charge spread function
34 virtual void SetChargeSpread(Float_t p1, Float_t p2)
35 {fChargeSpreadX=p1; fChargeSpreadY=p2;}
36 virtual Float_t ChargeSpreadX() {return fChargeSpreadX;}
37 virtual Float_t ChargeSpreadY() {return fChargeSpreadY;}
38 // Adc-count saturation value
39 virtual void SetMaxAdc(Float_t p1) {fMaxAdc=p1;}
40 virtual Float_t MaxAdc() {return fMaxAdc;}
41 // anode cathode Pitch
42 virtual Float_t Pitch() {return fPitch;}
43 virtual void SetPitch(Float_t p1) {fPitch=p1;};
45 virtual void SetAlphaFeedback(Float_t alpha) {fAlphaFeedback=alpha;}
46 virtual Float_t AlphaFeedback() {return fAlphaFeedback;}
48 virtual void SetEIonisation(Float_t e) {fEIonisation=e;}
49 virtual Float_t EIonisation() {return fEIonisation;}
50 // Mathieson parameters
51 virtual void SetSqrtKx3(Float_t p1) {fSqrtKx3=p1;};
52 virtual void SetKx2(Float_t p1) {fKx2=p1;};
53 virtual void SetKx4(Float_t p1) {fKx4=p1;};
54 virtual void SetSqrtKy3(Float_t p1) {fSqrtKy3=p1;};
55 virtual void SetKy2(Float_t p1) {fKy2=p1;};
56 virtual void SetKy4(Float_t p1) {fKy4=p1;};
58 // Chamber response methods
59 // Pulse height from scored quantity (eloss)
60 virtual Float_t IntPH(Float_t eloss, Float_t yhit);
61 virtual Float_t IntPH(Float_t yhit);
62 // Charge disintegration
63 virtual Float_t IntXY(AliSegmentation * segmentation);
64 virtual Int_t FeedBackPhotons(Float_t *source, Float_t qtot);
66 virtual void SetWireSag(Int_t p1) {fWireSag=p1;};
67 virtual void SetVoltage(Int_t p1) {fVoltage=p1;};
69 Float_t fChargeSlope; // Slope of the charge distribution
70 Float_t fChargeSpreadX; // Width of the charge distribution in x
71 Float_t fChargeSpreadY; // Width of the charge distribution in y
72 Float_t fSigmaIntegration; // Number of sigma's used for charge distribution
73 Float_t fAlphaFeedback; // Feedback photons coefficient
74 Float_t fEIonisation; // Mean ionisation energy
75 Float_t fMaxAdc; // Maximum ADC channel
76 Float_t fSqrtKx3; // Mathieson parameters for x
77 Float_t fKx2; // Mathieson parameters for x
78 Float_t fKx4; // Mathieson parameters for x
79 Float_t fSqrtKy3; // Mathieson parameters for y
80 Float_t fKy2; // Mathieson parameters for y
81 Float_t fKy4; // Mathieson parameters for y
82 Float_t fPitch; // Anode-cathode pitch
83 Int_t fWireSag; // Flag to turn on/off (0/1) wire sag
84 Int_t fVoltage; // Working voltage (2000, 2050, 2100, 2150)
85 ClassDef(AliRICHResponseV0,1) // RICH Response model: Mathieson verion
88 inline void AliRICHResponseV0::Print(Option_t* option) const
91 cout<<"Slope of the charge distribution "<<fChargeSlope <<endl;
92 cout<<"Width of the charge distribution in x "<<fChargeSpreadX <<endl;
93 cout<<"Width of the charge distribution in y "<<fChargeSpreadY <<endl;
94 cout<<"Number of sigma's used for charge distribution "<<fSigmaIntegration <<endl;
95 cout<<"Feedback photons coefficient "<<fAlphaFeedback <<endl;
96 cout<<"Mean ionisation energy "<<fEIonisation <<endl;
97 cout<<"Maximum ADC channel "<<fMaxAdc <<endl;
98 cout<<"Mathieson parameters for x "<<fSqrtKx3 <<endl;
99 cout<<"Mathieson parameters for x "<<fKx2 <<endl;
100 cout<<"Mathieson parameters for x "<<fKx4 <<endl;
101 cout<<"Mathieson parameters for y "<<fSqrtKy3 <<endl;
102 cout<<"Mathieson parameters for y "<<fKy2 <<endl;
103 cout<<"Mathieson parameters for y "<<fKy4 <<endl;
104 cout<<"Anode-cathode pitch "<<fPitch <<endl;
105 cout<<"Flag to turn on/off (0/1) wire sag "<<fWireSag <<endl;
106 cout<<"Working voltage (2000, 2050, 2100, 2150) "<<fVoltage <<endl;
107 }//void AliRICHResponseV0::Print()