12 #include <TMatrixDSym.h>
13 #include "TClonesArray.h"
19 #include "FairRootManager.h"
21 #include "FairRunAna.h"
22 #include "FairRuntimeDb.h"
23 #include "FairTrackParH.h"
24 #include "FairTrackParP.h"
29 : FairTask(
"Cleaning Tracks from noise hits Task for PANDA Lmd"),
38 : FairTask(
"Cleaning Tracks from noise hits Task for PANDA Lmd"),
42 std::cout <<
"Beam Momentum in this run is " <<
fPbeam << std::endl;
51 FairRootManager* ioman = FairRootManager::Instance();
53 std::cout <<
"-E- PndLmdNoiseTrkSuppressionTask::Init: "
54 <<
"RootManager not instantiated!" << std::endl;
58 fTrkInArray = (TClonesArray*)ioman->GetObject(
"LMDPndTrackFilt");
60 std::cout <<
"-W- PndLmdNoiseTrkSuppressionTask::Init: "
62 <<
" array!" << std::endl;
67 ioman->Register(
"LMDPndTrackFilt",
"PndLmd",
fTrkOutArray, kTRUE);
77 TMVA::Tools::Instance();
80 reader =
new TMVA::Reader(
"!Color:!Silent");
91 TString prefix =
"TMVAClassification";
116 std::cout <<
" ---- Info: " <<
fEventNr << std::endl;
122 for (Int_t iN = 0; iN < nTrks; iN++) {
127 axrec = fFittedTrkP.GetX();
128 ayrec = fFittedTrkP.GetY();
129 TVector3 MomRecLMD(fFittedTrkP.GetPx(), fFittedTrkP.GetPy(),
130 fFittedTrkP.GetPz());
131 MomRecLMD *= 1. / MomRecLMD.Mag();
132 athrec = MomRecLMD.Theta();
136 std::cout <<
"mva_response = " << mva_response << std::endl;
138 if (mva_response < 0)
144 new ((*fTrkOutArray)[rec_trk])
PndTrack(*(trkpnd));
149 std::cout <<
"Ev#" <<
fEventNr <<
": " << rec_trk <<
" trks saved out of "
150 << nTrks << std::endl;
~PndLmdNoiseTrkSuppressionTask()
PndLmdNoiseTrkSuppressionTask()
virtual void SetParContainers()
virtual void Exec(Option_t *opt)
TClonesArray * fTrkOutArray
TClonesArray * fTrkInArray
virtual InitStatus Init()
FairTrackParP GetParamFirst()