PandaRoot
PndPidSttAssociatorTask.h
Go to the documentation of this file.
1 //
2 // PndPidSttAssociatorTask.h
3 //
4 // STANDARD PROCEDURE:
5 //
6 // @ fixed momentum, the de/dx_mean values distribute as a gaussian:
7 // its mean and sigma is evaluated from the distribution of de/dx
8 // from truncated mean vs momentum from global tracking for the
9 // different particles.
10 //
11 // The candidate pid is evaluated as the probability density function
12 // value of the gaussian @ the reconstructed momentum, evaluated for
13 // the measured dedx_mean of the track.
14 //
15 // ============================================
16 
17 #ifndef PID_STT_ASSOCIATOR_H
18 #define PID_STT_ASSOCIATOR_H
19 
20 #include "FairTask.h"
21 
22 #include "TF1.h"
23 #include "TClonesArray.h"
24 
25 class PndPidCandidate;
26 class PndPidProbability;
27 
28 class PndPidSttAssociatorTask : public FairTask {
29 
30  protected:
31  TClonesArray *fPidChargedCand;
32  TClonesArray *fPidChargedProb;
33 
35 
36  // assign probabilities
37  void DoPidMatch(PndPidCandidate *pidcand, PndPidProbability *prob);
38 
39  // calculate probability
40  Double_t GetPdf(Double_t dedx, Double_t mean, Double_t sigma);
41 
43  void MuonDEDXMeanFunction();
44  void PionDEDXMeanFunction();
45  void KaonDEDXMeanFunction();
48 
50  void MuonDEDXSigmaFunction();
51  void PionDEDXSigmaFunction();
52  void KaonDEDXSigmaFunction();
55 
62 
69 
70  public:
73 
74  PndPidSttAssociatorTask(const char *name, const char *title = "Pnd Task");
75 
77  virtual ~PndPidSttAssociatorTask();
78 
80  virtual InitStatus Init();
81 
83  virtual void Exec(Option_t *opt);
84 
85  void SetVerbose(Bool_t verb) { fVerbose = verb; };
86  void SetOutputBranch(TString branch) { fTrackBranchNamePidHypo = branch; };
87 
88  void SetDefaultMassHypo(Bool_t hypo) { fDefaultHypo = hypo; }
89  Bool_t IsDefaultMassHypo() { return fDefaultHypo; }
90 
91  // when using the Kalman performed only with the muon hypothesis
92  // and the pid with the default hypothesis
93  Int_t fDefaultHypo;
95 };
96 
97 #endif
void SetOutputBranch(TString branch)
Double_t GetPdf(Double_t dedx, Double_t mean, Double_t sigma)
TClonesArray * fPidChargedProb
charged candidates
virtual ~PndPidSttAssociatorTask()
void DoPidMatch(PndPidCandidate *pidcand, PndPidProbability *prob)
void SetDefaultMassHypo(Bool_t hypo)
virtual InitStatus Init()
ClassDef(PndPidSttAssociatorTask, 1)
virtual void Exec(Option_t *opt)