10 #include "FairRootManager.h"
12 #include "TClonesArray.h"
47 if(
fVerbose > 0) std::cout <<
"PndPidSttAssociatorTask::Init()" << std::endl;
50 FairRootManager* ioman = FairRootManager::Instance();
52 std::cout <<
"-E- PndPidSttAssociatorTask::Init: "
53 <<
"RootManager not instantiated!" << std::endl;
59 std::cout <<
"-E- PndPidSttAssociatorTask::Init: No PidChargedCand array!" << std::endl;
79 if(
fDefaultHypo == kTRUE) std::cout <<
"-I- PndPidSttAssociatorTask: using default mass hypo bands (muon)" << endl;
80 else std::cout <<
"-I- PndPidSttAssociatorTask: NOT using default mass hypo bands" << endl;
82 std::cout <<
"-I- PndPidSttAssociatorTask::Init: Intialization successfull" << endl;
187 TF1 *gausPdf =
new TF1(
"gausPdf",
"gausn", 0, 100);
188 gausPdf->SetParameters(1, mean, sigma);
198 fElectronDEDXMean =
new TF1(
"emdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
206 fMuonDEDXMean =
new TF1(
"mumdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
208 else fMuonDEDXMean->SetParameters(8.84580e-02,7.70377e-01,5.38858e+00);
213 fPionDEDXMean =
new TF1(
"pimdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5);
215 else fPionDEDXMean->SetParameters(1.28760e-01,7.53150e-01,5.22487e+00);
220 fKaonDEDXMean =
new TF1(
"kmdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
222 else fKaonDEDXMean->SetParameters(1.56819e+00,8.85371e-01,4.13682e+00);
227 fProtonDEDXMeanH =
new TF1(
"pmdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
234 fProtonDEDXMeanL =
new TF1(
"pmdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
244 fElectronDEDXSigma =
new TF1(
"esdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
251 fMuonDEDXSigma =
new TF1(
"musdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
253 else fMuonDEDXSigma->SetParameters(8.54877e-03,2.96974e-02,5.51581e-01);
258 fPionDEDXSigma =
new TF1(
"pisdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
260 else fPionDEDXSigma->SetParameters(1.49778e-02,3.05617e-02,5.43355e-01);
265 fKaonDEDXSigma =
new TF1(
"ksdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
267 else fKaonDEDXSigma->SetParameters(2.30775e-01,8.81697e-02,4.20122e-01);
272 fProtonDEDXSigmaL =
new TF1(
"psdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
278 fProtonDEDXSigmaH =
new TF1(
"psdedx",
"[0] * (1./x)**2 + [1] * TMath::Log(x) + [2]", 0.2, 5.);
virtual void Exec(Option_t *opt)
Double_t GetPdf(Double_t dedx, Double_t mean, Double_t sigma)
void MuonDEDXSigmaFunction()
void ProtonDEDXMeanFunctionL()
TClonesArray * fPidChargedProb
charged candidates
void SetPionPdf(Double_t val)
friend F32vec4 sqrt(const F32vec4 &a)
Float_t GetSttMeanDEDX() const
Double_t val[nBoxes][nFEBox]
TClonesArray * fPidChargedCand
void PionDEDXMeanFunction()
virtual ~PndPidSttAssociatorTask()
void SetKaonPdf(Double_t val)
void ProtonDEDXSigmaFunctionH()
virtual InitStatus Init()
void DoPidMatch(PndPidCandidate *pidcand, PndPidProbability *prob)
void PionDEDXSigmaFunction()
void SetElectronPdf(Double_t val)
void SetMuonPdf(Double_t val)
void ProtonDEDXMeanFunctionH()
h_MC_angle SetTitle("MC truth: opening angle of #pi^{0}")
void KaonDEDXMeanFunction()
TString fTrackBranchNamePidHypo
void SetProtonPdf(Double_t val)
void KaonDEDXSigmaFunction()
PndPidSttAssociatorTask()
void MuonDEDXMeanFunction()
void ElectronDEDXSigmaFunction()
TVector3 GetMomentum() const
void ProtonDEDXSigmaFunctionL()
void ElectronDEDXMeanFunction()