FairRoot/PandaRoot
PndFsmMvd2.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: FsmMvd2.hh,v 1.4 2006/08/10 09:58:41 klausg Exp $
4 //
5 // Description:
6 // Class FsmMvd2
7 //
8 // Implementation of the MVD for the Fast Sim Detectors
9 //
10 // This software was developed for the PANDA collaboration. If you
11 // use all or part of it, please give an appropriate acknowledgement.
12 //
13 // Author List:
14 // Klaus Goetzen Original Author
15 //
16 // Copyright Information:
17 // Copyright (C) 2006 GSI
18 //
19 //------------------------------------------------------------------------
20 
21 #ifndef FsmMvd2_hh
22 #define FsmMvd2_hh
23 
24 //----------------------
25 // Base Class Headers --
26 //----------------------
27 
28 //-------------------------------
29 // Collaborating class Headers --
30 //-------------------------------
31 #include <iosfwd>
32 #include "ArgList.h"
33 #include "PndFsmAbsDet.h"
34 
35 //--------------------------------------------
36 // Collaborating class forward declarations --
37 // -------------------------------------------
38 class PndFsmTrack;
39 class PndFsmResponse;
40 
41 class PndFsmMvd2: public PndFsmAbsDet
42 {
43 public:
44 
45  //--------------------
46  // Public interface --
47  //--------------------
48 
49  //
50  // Constructors
51  //
52 
54  PndFsmMvd2();
58  virtual ~PndFsmMvd2();
59 
65 
66 private:
67  bool detected(PndFsmTrack *t) const;
68  double dp(PndFsmTrack *t) const;
69  double dphi(PndFsmTrack *t) const;
70  double dtheta(PndFsmTrack *t) const;
71 
72  void initParameters();
73  void print(std::ostream &o);
74  bool setParameter(std::string &name, double value);
75 
76  //
77  // Modifiers
78  //
79 
80  double _thtMin;
81  double _thtMax;
82  double _radiationLength; //material budget
83  double _pmin;
84  double _vtxRes; //vertex resolution dx,dy,dz
85  double _pRes;
86  double _dEdxResMulti;
87  double _phiRes;
88  double _thetaRes;
89 
90  //Local pid type (BARBAR)
91  enum {nPidType = 5};
92  enum PidType {
98  };
99 
101  double LandauGaus(double s_mpv, double width1, double width2);
102  double Likelihood(PidType particle);
103  double mpv(PidType particle);
104  double width1(PidType particle);
105  double width2(PidType particle);
106 
107  double _momentum;
108  double _energyloss;
109 
110 };
111 
112 #endif
double dtheta(PndFsmTrack *t) const
Definition: PndFsmMvd2.cxx:174
double _momentum
Definition: PndFsmMvd2.h:107
double _thtMax
Definition: PndFsmMvd2.h:81
virtual PndFsmResponse * respond(PndFsmTrack *t)
Definition: PndFsmMvd2.cxx:93
double MeanEnergyLoss(PidType particle)
Definition: PndFsmMvd2.cxx:256
virtual ~PndFsmMvd2()
Definition: PndFsmMvd2.cxx:84
double width1(PidType particle)
Definition: PndFsmMvd2.cxx:409
double width2(PidType particle)
Definition: PndFsmMvd2.cxx:445
std::list< std::string > ArgList
Definition: ArgList.h:7
void initParameters()
Definition: PndFsmMvd2.cxx:197
Double_t par[3]
void print(std::ostream &o)
Definition: PndFsmMvd2.cxx:181
double _thetaRes
Definition: PndFsmMvd2.h:88
double _dEdxResMulti
Definition: PndFsmMvd2.h:86
double _thtMin
Definition: PndFsmMvd2.h:80
double dp(PndFsmTrack *t) const
Definition: PndFsmMvd2.cxx:159
const int particle
double dphi(PndFsmTrack *t) const
Definition: PndFsmMvd2.cxx:167
double _energyloss
Definition: PndFsmMvd2.h:108
double LandauGaus(double s_mpv, double width1, double width2)
Definition: PndFsmMvd2.cxx:270
double _phiRes
Definition: PndFsmMvd2.h:87
double _pmin
Definition: PndFsmMvd2.h:83
double _vtxRes
Definition: PndFsmMvd2.h:84
double _radiationLength
Definition: PndFsmMvd2.h:82
TString name
bool setParameter(std::string &name, double value)
Definition: PndFsmMvd2.cxx:213
bool detected(PndFsmTrack *t) const
Definition: PndFsmMvd2.cxx:146
TTree * t
Definition: bump_analys.C:13
double Likelihood(PidType particle)
Definition: PndFsmMvd2.cxx:341
double mpv(PidType particle)
Definition: PndFsmMvd2.cxx:345
double _pRes
Definition: PndFsmMvd2.h:85