FairRoot/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 class PndPidCandidate;
24 class PndPidProbability;
25 
26 class PndPidSttAssociatorTask : public FairTask {
27 
28  protected:
29 
30  TClonesArray* fPidChargedCand;
31  TClonesArray* fPidChargedProb;
32 
34 
35  // assign probabilities
36  void DoPidMatch(PndPidCandidate* pidcand, PndPidProbability* prob);
37 
38  // calculate probability
40 
42  void MuonDEDXMeanFunction();
43  void PionDEDXMeanFunction();
44  void KaonDEDXMeanFunction();
47 
49  void MuonDEDXSigmaFunction();
50  void PionDEDXSigmaFunction();
51  void KaonDEDXSigmaFunction();
54 
61 
68 
69 
70 
71  public:
72 
73 
76 
77  PndPidSttAssociatorTask(const char *name, const char *title="Pnd Task");
78 
80  virtual ~PndPidSttAssociatorTask();
81 
82 
84  virtual InitStatus Init();
85 
86 
88  virtual void Exec(Option_t* opt);
89 
90  void SetVerbose(Bool_t verb) { fVerbose = verb ;};
91  void SetOutputBranch(TString branch) { fTrackBranchNamePidHypo = branch; };
92 
93  void SetDefaultMassHypo(Bool_t hypo ) { fDefaultHypo = hypo; }
95 
96  // when using the Kalman performed only with the muon hypothesis
97  // and the pid with the default hypothesis
98  Int_t fDefaultHypo;
100 
101 };
102 
103 #endif
void SetOutputBranch(TString branch)
virtual void Exec(Option_t *opt)
Double_t GetPdf(Double_t dedx, Double_t mean, Double_t sigma)
int fVerbose
Definition: poormantracks.C:24
TClonesArray * fPidChargedProb
charged candidates
Double_t sigma[nsteps]
Definition: dedx_bands.C:65
void DoPidMatch(PndPidCandidate *pidcand, PndPidProbability *prob)
Double_t
void SetDefaultMassHypo(Bool_t hypo)
TString name
Double_t mean[nsteps]
Definition: dedx_bands.C:65
ClassDef(PndPidSttAssociatorTask, 1)