FairRoot/PandaRoot
PndRichResolution.cxx
Go to the documentation of this file.
1 #include "PndRichResolution.h"
2 #include "PndPidCandidate.h"
3 
4 //___________________________________________________________
6 {
7 }
8 
9 // ----- Default constructor -------------------------------------------
11 {
12  caldb = new PndRichCalDb("rich_caldb_v313","R");
13  caldb->Init();
14  caldb->Print();
15 }
16 
17 //______________________________________________________
19 {
20  Double_t sigmu = caldb->GetBetaSig(pnt);
21  // temporary: multi scattering correction
22  Double_t k = 0.41e-3;//0.462e-3;
23  Double_t beta2 = pnt.beta*pnt.beta;
24  k *= sqrt(1-beta2)/beta2;
25  Double_t sigMultScattM = k/pnt.mass;
26  Double_t sigMultScattMu = k/0.1056583715;
27  Double_t sigmar = sigmu*sigmu -
28  sigMultScattMu*sigMultScattMu +
29  sigMultScattM*sigMultScattM;
30  sigmu = sigmar>0 ? sqrt(sigmar) : sigmu;
31  return sigmu;
32 }
33 
34 //______________________________________________________
36 {
37  return caldb->GetBetaMean(pnt);
38 }
39 
40 //______________________________________________________
42 {
43  return caldb->GetBetaEff(pnt);
44 }
45 
46 // -------------------------------------------------------------------------
47 
virtual Double_t GetBetaEff(dbpoint pnt)
virtual void Print()
friend F32vec4 sqrt(const F32vec4 &a)
Definition: P4_F32vec4.h:29
TClonesArray * pnt
PndRichCalDb * caldb
Double_t
virtual Double_t GetBetaSig(dbpoint pnt)
virtual Double_t GetBetaMean(dbpoint pnt)
Double_t mass
Definition: PndRichCalDb.h:23
Double_t Shift(dbpoint pnt)
virtual void Init()
Double_t Sigma(dbpoint pnt)
Double_t Efficiency(dbpoint pnt)
Double_t beta
Definition: PndRichCalDb.h:24