+ virtual Double_t IntPH(Double_t) const {return 0.;}
+ // Charge disintegration
+ virtual Double_t IntXZ(AliITSsegmentation *) const {return 0.;}
+ // Electron mobility in Si. [cm^2/(Volt Sec)]. T in degree K, N in #/cm^3
+ virtual Double_t MobilityElectronSiEmp() const ;
+ // Hole mobility in Si. [cm^2/(Volt Sec)] T in degree K, N in #/cm^3
+ virtual Double_t MobilityHoleSiEmp() const ;
+ // Einstein relation for Diffusion Coefficient of Electrons. [cm^2/sec]
+ // T in degree K, N in #/cm^3
+ virtual Double_t DiffusionCoefficientElectron() const ;
+ // Einstein relation for Diffusion Coefficient of Holes. [cm^2/sec]
+ // T in [degree K], N in [#/cm^3]
+ virtual Double_t DiffusionCoefficientHole() const ;
+ // Electron <speed> under an applied electric field E=Volts/cm. [cm/sec]
+ // d distance-thickness in [cm], v in [volts], T in [degree K],
+ // N in [#/cm^3]
+ virtual Double_t SpeedElectron() const ;
+ // Holes <speed> under an applied electric field E=Volts/cm. [cm/sec]
+ // d distance-thickness in [cm], v in [volts], T in [degree K],
+ // N in [#/cm^3]
+ virtual Double_t SpeedHole() const ;
+ // Returns the Gaussian sigma == <x^2+z^2> [cm^2] due to the defusion of
+ // electrons or holes through a distance l [cm] caused by an applied
+ // voltage v [volt] through a distance d [cm] in any material at a
+ // temperature T [degree K].
+ virtual Double_t SigmaDiffusion3D(Double_t l) const;
+ // Returns the Gaussian sigma == <x^2 +y^2+z^2> [cm^2] due to the
+ // defusion of electrons or holes through a distance l [cm] caused by an
+ // applied voltage v [volt] through a distance d [cm] in any material at a
+ // temperature T [degree K].
+ virtual Double_t SigmaDiffusion2D(Double_t l) const;
+ // Returns the Gaussian sigma == <x^2+z^2> [cm^2] due to the defusion of
+ // electrons or holes through a distance l [cm] caused by an applied
+ // voltage v [volt] through a distance d [cm] in any material at a
+ // temperature T [degree K].
+ virtual Double_t SigmaDiffusion1D(Double_t l) const;
+ // Compute the thickness of the depleted region in a Si detector, version A
+ virtual Double_t DepletedRegionThicknessA(Double_t dopCons,
+ Double_t voltage,
+ Double_t elecCharge,
+ Double_t voltBuiltIn=0.5)const;
+ // Compute the thickness of the depleted region in a Si detector, version B
+ virtual Double_t DepletedRegionThicknessB(Double_t resist,Double_t voltage,
+ Double_t mobility,
+ Double_t voltBuiltIn=0.5,
+ Double_t dielConst=1.E-12)const;
+ // Computes the temperature dependance of the reverse bias current
+ virtual Double_t ReverseBiasCurrent(Double_t temp,Double_t revBiasCurT1,
+ Double_t tempT1,Double_t energy=1.2)const;
+ // Prints out the content of this class in ASCII format.
+ virtual void Print(ostream *os) const;
+ // Reads in the content of this class in the format of Print
+ virtual void Read(istream *is);
+ virtual void Print(Option_t *option="") const {TObject::Print(option);}
+ virtual Int_t Read(const char *name) {return TObject::Read(name);}
+ protected:
+ void NotImplemented(const char *method) const {if(gDebug>0)
+ Warning(method,"This method is not implemented for this sub-class");}
+
+ TString fDataType; // data type - real or simulated
+ private:
+ Double_t fdv; // The parameter d/v where d is the disance over which the
+ // the potential v is applied d/v [cm/volts]
+ Double_t fN; // the impurity consentration of the material in #/cm^3
+ Double_t fT; // The temperature of the Si in Degree K.
+ Double_t fGeVcharge; // Energy to ionize (free an electron) in GeV
+ TString fFileName1; // input keys : run, module #
+ TString fFileName2; // baseline & noise val or output code
+ // signal or monitored bgr.
+ TString fFileName3; // param values or output coded signal
+ Bool_t fWrite; // Write option for the compression algorithms
+
+ ClassDef(AliITSresponse,2) // Detector type response virtual base class