FairRoot/PandaRoot
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PndRecoKalmanTask2 Class Reference

#include <PndRecoKalmanTask2.h>

Inheritance diagram for PndRecoKalmanTask2:
PndPersistencyTask

Public Member Functions

 PndRecoKalmanTask2 (const char *name="Genfit", Int_t iVerbose=0)
 
 ~PndRecoKalmanTask2 ()
 
void SetTrackInBranchName (const TString &name)
 
void SetTrackOutBranchName (const TString &name)
 
void SetMvdBranchName (const TString &name)
 
void SetCentralTrackerBranchName (const TString &name)
 
void SetGeane (Bool_t opt=kTRUE)
 
void SetIdealHyp (Bool_t opt=kTRUE)
 
void SetDaf (Bool_t opt=kTRUE)
 
void SetPropagateToIP (Bool_t opt=kTRUE)
 
void SetPropagateDistance (Float_t opt=-1.)
 
void SetPerpPlane (Bool_t opt=kTRUE)
 
void SetNumIterations (Int_t num)
 
void SetParticleHypo (TString s)
 
void SetParticleHypo (Int_t h)
 
void SetBusyCut (Int_t b)
 
virtual InitStatus Init ()
 
void SetParContainers ()
 
virtual void Exec (Option_t *opt)
 
void SetPersistency (Bool_t val=kTRUE)
 
Bool_t GetPersistency ()
 

Protected Member Functions

 ClassDef (PndRecoKalmanTask2, 1)
 Skip too busy events with more tracks. More...
 

Protected Attributes

TClonesArray * fTrackArray
 
TClonesArray * fMCTrackArray
 Input TCA for PndTrack. More...
 
TClonesArray * fFitTrackArray
 Input TCA for PndMCTrack. More...
 
TString fTrackInBranchName
 Output TCA for track. More...
 
TString fTrackOutBranchName
 Name of the input TCA. More...
 
TString fMvdBranchName
 Name of the output TCA. More...
 
TString fCentralTrackerBranchName
 Name of the TCA for MVD. More...
 
PndRecoKalmanFit2fFitter
 Name of the TCA for central tracker. More...
 
PndRecoDafFit2fDafFitter
 Standard Kalman Filter class. More...
 
TDatabasePDG * pdg
 Deterministic Annealing class. More...
 
Bool_t fUseGeane
 Particle DB. More...
 
Bool_t fSmoothing
 Flag to use Geane. More...
 
Bool_t fIdealHyp
 Flag to set on smoothing (not used) More...
 
Bool_t fDaf
 Flag to use MC particle hypothesis. More...
 
Bool_t fPropagateToIP
 Flag to use Deterministic Annealing. More...
 
Float_t fPropagateDistance
 Flag to propagate the parameters to the interaction point (kTRUE) More...
 
Bool_t fPerpPlane
 Distance in [cm] to back-propagate the parameters, negative number means no backpropagation. More...
 
Int_t fNumIt
 Flag to use as initial plane the one perpendicular to the track (kFALSE) More...
 
Int_t fPDGHyp
 Number of iterations. More...
 
Int_t fBusyCut
 Hypothesis. More...
 

Detailed Description

Definition at line 33 of file PndRecoKalmanTask2.h.

Constructor & Destructor Documentation

PndRecoKalmanTask2::PndRecoKalmanTask2 ( const char *  name = "Genfit",
Int_t  iVerbose = 0 
)

Definition at line 38 of file PndRecoKalmanTask2.cxx.

References fDafFitter, fFitter, fFitTrackArray, and PndPersistencyTask::SetPersistency().

41  fFitter(), fDafFitter(),
42 fUseGeane(kTRUE), fIdealHyp(kFALSE), fDaf(kFALSE),
43  fPropagateToIP(kFALSE), fPropagateDistance(2.f), fPerpPlane(kFALSE),
44  fNumIt(1), fPDGHyp(-13), fBusyCut(20)
45 {
46  fFitTrackArray = new TClonesArray("PndTrack");
47  fFitter = new PndRecoKalmanFit2();
48  fDafFitter = new PndRecoDafFit2();
49  SetPersistency(kTRUE);
50 }
PndRecoDafFit2 * fDafFitter
Standard Kalman Filter class.
TString fTrackInBranchName
Output TCA for track.
Bool_t fPropagateToIP
Flag to use Deterministic Annealing.
TString fTrackOutBranchName
Name of the input TCA.
Bool_t fPerpPlane
Distance in [cm] to back-propagate the parameters, negative number means no backpropagation.
void SetPersistency(Bool_t val=kTRUE)
Bool_t fUseGeane
Particle DB.
Float_t fPropagateDistance
Flag to propagate the parameters to the interaction point (kTRUE)
Int_t fBusyCut
Hypothesis.
Int_t fNumIt
Flag to use as initial plane the one perpendicular to the track (kFALSE)
TString fMvdBranchName
Name of the output TCA.
PndRecoKalmanFit2 * fFitter
Name of the TCA for central tracker.
Bool_t fIdealHyp
Flag to set on smoothing (not used)
TFile * f
Definition: bump_analys.C:12
TString name
Int_t fPDGHyp
Number of iterations.
Int_t iVerbose
TClonesArray * fFitTrackArray
Input TCA for PndMCTrack.
TString fCentralTrackerBranchName
Name of the TCA for MVD.
Bool_t fDaf
Flag to use MC particle hypothesis.
PndRecoKalmanTask2::~PndRecoKalmanTask2 ( )

Definition at line 53 of file PndRecoKalmanTask2.cxx.

54 {
55 }

Member Function Documentation

PndRecoKalmanTask2::ClassDef ( PndRecoKalmanTask2  ,
 
)
protected

Skip too busy events with more tracks.

void PndRecoKalmanTask2::Exec ( Option_t *  opt)
virtual

Definition at line 134 of file PndRecoKalmanTask2.cxx.

References fBusyCut, fDaf, fDafFitter, fFitter, fFitTrackArray, fIdealHyp, PndRecoDafFit2::Fit(), PndRecoKalmanFit2::Fit(), fMCTrackArray, fPDGHyp, fTrackArray, fTrackInBranchName, fVerbose, PndTrack::GetChi2(), PndTrack::GetFlag(), PndTrack::GetNDF(), PndTrack::GetParamFirst(), PndTrack::GetParamLast(), PndMCTrack::GetPdgCode(), PndTrack::GetPidHypo(), PndTrack::GetTrackCand(), pdg, and PndTrack::SetFlag().

134  {
135  if (fVerbose > 0)
136  std::cout << "PndRecoKalmanTask2::Exec " << FairRootManager::Instance()->GetEntryNr() << std::endl;
137 
138  fFitTrackArray->Delete();
139 
140  Int_t ntracks = fTrackArray->GetEntriesFast();
141 
142  // Detailed output
143  if (fVerbose > 1)
144  std::cout << " -I- PndRecoKalmanTask2: contains " << ntracks
145  << " Tracks." << std::endl;
146 
147  // Cut too busy events TODO
148  if (ntracks > fBusyCut) {
149  std::cout << " -I- PndRecoKalmanTask2::Exec: ntracks=" << ntracks
150  << " Evil Event! skipping" << std::endl;
151  return;
152  }
153 
154  for (Int_t itr = 0; itr < ntracks; ++itr) {
155  if (fVerbose > 1)
156  std::cout << "starting track" << itr << std::endl;
157 
158  TClonesArray& trkRef = *fFitTrackArray;
159  Int_t size = trkRef.GetEntriesFast();
160 
161  PndTrack *prefitTrack = (PndTrack*) fTrackArray->At(itr);
162  Int_t fCharge = prefitTrack->GetParamFirst().GetQ();
163  Int_t PDGCode = 0;
164  if (fIdealHyp) {
165  std::vector<FairLink> mcTrackLinks = prefitTrack->GetSortedMCTracks();
166 // PndTrackID *prefitTrackID = (PndTrackID*) fTrackIDArray->At(itr);
167  if (mcTrackLinks.size() > 0) {
168  Int_t mcTrackId = mcTrackLinks[0].GetIndex();
169  if (mcTrackId != -1) {
170  PndMCTrack *mcTrack = (PndMCTrack*) fMCTrackArray->At( //TODO: Replace with GetCloneOfLinkData to run time-based
171  mcTrackId);
172  if (!mcTrack) {
173  PDGCode = 211 * fCharge;
174  std::cout << "-I- PndRecoKalmanTask2::Exec: MCTrack #"
175  << mcTrackId
176  << " is not existing!! Trying with pion hyp"
177  << std::endl;
178  } else {
179  PDGCode = mcTrack->GetPdgCode();
180  }
181  if (PDGCode >= 100000000) {
182  PDGCode = 211 * fCharge;
183  std::cout
184  << "-I- PndRecoKalmanTask2::Exec: Track is an ion (PDGCode>100000000)! Trying with pion hyp"
185  << std::endl;
186  } else if ((((TParticlePDG*) pdg->GetParticle(PDGCode))->Charge())
187  == 0) {
188  PDGCode = 211 * fCharge;
189  std::cout
190  << "-E- PndRecoKalmanTask2::Exec: Track MC charge is 0!!!! Trying with pion hyp"
191  << std::endl;
192  }
193  } // end of MCTrack ID != -1
194  else {
195  PDGCode = 211 * fCharge;
196  std::cout
197  << "-E- PndRecoKalmanTask2::Exec: No MCTrack index in PndTrackID!! Trying with pion hyp"
198  << std::endl;
199  }
200  } // end of "at least one correlated mc index"
201  else {
202  PDGCode = 211 * fCharge;
203  std::cout
204  << "-E- PndRecoKalmanTask2::Exec: No Correlated MCTrack id in PndTrackID!! Trying with pion hyp"
205  << std::endl;
206  }
207  } // end of ideal hyp condition
208  else {
209  PDGCode = fPDGHyp * fCharge;
210  }
211 
212  PndTrack fitTrack;
213  PndTrack* fitTrackPointer = 0;
214  //bool usePrefit = false; //[R.K.03/2017] unused variable
215  if (PDGCode != 0) {
216  if (fDaf){
217  fitTrackPointer = (fDafFitter->Fit(prefitTrack, PDGCode));
218  fitTrack = *fitTrackPointer;
219  }
220  else{
221  fitTrackPointer = (fFitter->Fit(prefitTrack, PDGCode));
222  fitTrack = *fitTrackPointer;
223  }
224  } else {
225  fitTrack = *prefitTrack;
226  fitTrack.SetFlag(-22);
227  //usePrefit = true; //[R.K.03/2017] unused variable
228  std::cout
229  << "-I- PndRecoKalmanTask2::Exec: Kalman cannot run on this track because of the bad MonteCarlo PDG code"
230  << std::endl;
231  }
232 
233 
234  new (trkRef[size]) PndTrack(
235  fitTrack.GetParamFirst(), fitTrack.GetParamLast(),
236  fitTrack.GetTrackCand(), fitTrack.GetFlag(),
237  fitTrack.GetChi2(), fitTrack.GetNDF(), fitTrack.GetPidHypo(),
238  itr,
239  FairRootManager::Instance()->GetBranchId(fTrackInBranchName));//PndTrack* pndTrack = //[R.K.03/2017] unused variable
240 
241  }
242 
243  if (fVerbose > 0)
244  std::cout << "Fitting done" << std::endl;
245 
246  return;
247 }
PndRecoDafFit2 * fDafFitter
Standard Kalman Filter class.
int fVerbose
Definition: poormantracks.C:24
TString fTrackInBranchName
Output TCA for track.
TClonesArray * fMCTrackArray
Input TCA for PndTrack.
PndTrack * Fit(PndTrack *tBefore, Int_t PDG)
Int_t GetPdgCode() const
Definition: PndMCTrack.h:73
TDatabasePDG * pdg
Deterministic Annealing class.
Int_t GetFlag() const
Definition: PndTrack.h:33
TClonesArray * fTrackArray
Int_t fBusyCut
Hypothesis.
PndTrackCand GetTrackCand()
Definition: PndTrack.h:47
PndRecoKalmanFit2 * fFitter
Name of the TCA for central tracker.
Bool_t fIdealHyp
Flag to set on smoothing (not used)
Int_t GetNDF() const
Definition: PndTrack.h:35
PndTrack * Fit(PndTrack *tBefore, Int_t PDG)
FairTrackParP GetParamLast()
Definition: PndTrack.h:50
Double_t GetChi2() const
Definition: PndTrack.h:34
Int_t fPDGHyp
Number of iterations.
void SetFlag(Int_t i)
Definition: PndTrack.h:38
Int_t GetPidHypo() const
Definition: PndTrack.h:32
TClonesArray * fFitTrackArray
Input TCA for PndMCTrack.
Bool_t fDaf
Flag to use MC particle hypothesis.
FairTrackParP GetParamFirst()
Definition: PndTrack.h:49
Bool_t PndPersistencyTask::GetPersistency ( )
inlineinherited

Definition at line 32 of file PndPersistencyTask.h.

References PndPersistencyTask::fPersistency.

Referenced by PndLmdPixelHitProducerFast::GetPersistance(), PndMdtDigitization::Init(), PndMdtHitProducerIdeal::Init(), PndMdtClusterTask::Init(), PndFtsHitProducerRealFast::Init(), PndRichHitProducer::Init(), PndSttHitProducerRealFast::Init(), PndDiscTaskReconstruction::Init(), PndSttHelixHitProducer::Init(), PndDiscTaskPID::Init(), PndIdealTrackFinder::Init(), PndSttMvdGemTracking::Init(), PndMdtTrkProducer::Init(), PndFtsHitProducerRealFull::Init(), PndLmdPixelClusterTask::Init(), PndSttHitProducerRealFull::Init(), PndLmdStripClusterTask::Init(), PndEmcApdHitProducer::Init(), PndMissingPzCleanerTask::Init(), PndEmcMakeRecoHit::Init(), PndEmcMakeClusterOnline::Init(), PndTrackSmearTask::Init(), PndEmcFWEndcapTimebasedWaveforms::Init(), PndSttHitProducerIdeal::Init(), PndEmcFWEndcapDigi::Init(), PndFtsHitProducerIdeal::Init(), PndEmcMakeCluster::Init(), PndMdtPointsToWaveform::Init(), PndDiscTaskDigitization::Init(), PndEmcMakeDigi::Init(), PndSdsTimeWalkCorrTask::Init(), PndLmdPixelHitProducerFast::Init(), PndDrcHitFinder::Init(), PndRichHitFinder::Init(), PndEmcMakeCorr::Init(), PndFtofHitProducerIdeal::Init(), PndEmcHitsToWaveform::Init(), PndSciTDigiTask::Init(), PndDrcHitProducerIdeal::Init(), PndSdsHitProducerIdeal::Init(), PndSciTHitProducerIdeal::Init(), PndEmcHitProducer::Init(), PndRecoMultiKalmanTask2::Init(), PndDrcHitProducerReal::Init(), PndDskFLGHitProducerIdeal::Init(), PndEmcTmpWaveformToDigi::Init(), PndDrcDigiTask::Init(), PndEmcWaveformToDigi::Init(), PndSttMatchTracks::Init(), PndEmcWaveformToCalibratedDigi::Init(), PndTrkTracking2::Init(), PndSttFindTracks::Init(), PndEmcMultiWaveformToCalibratedDigi::Init(), PndDrcTimeDigiTask::Init(), Init(), PndEmcExpClusterSplitter::Init(), PndSdsNoiseProducer::Init(), PndFtsHoughTrackerTask::Init(), PndEmcPhiBumpSplitter::Init(), PndSdsHybridHitProducer::Init(), PndSdsIdealRecoTask::Init(), PndRecoMultiKalmanTask::Init(), PndSdsIdealClusterTask::Init(), PndRecoKalmanTask::Init(), PndSdsStripHitProducerDif::Init(), PndSdsStripHitProducer::Init(), PndGemDigitize::Init(), PndGemFindHits::Init(), PndSdsPixelClusterTask::Init(), PndSdsStripClusterTask::Init(), PndMvdGemTrackFinderOnHits::Init(), PndBarrelTrackFinder::Init(), PndEmcFullDigiTask::PndEmcFullDigiTask(), PndEmcMakeBump::PndEmcMakeBump(), PndUnassignedHitsTask::RegisterBranches(), PndMvdClusterTask::SetPersistance(), PndMvdDigiTask::SetPersistance(), PndEmcMakeBump::SetStorageOfData(), and PndEmcFullDigiTask::StoreDigi().

32 { return fPersistency; }
InitStatus PndRecoKalmanTask2::Init ( )
virtual

Definition at line 58 of file PndRecoKalmanTask2.cxx.

References fCentralTrackerBranchName, fDaf, fDafFitter, fFitter, fFitTrackArray, fIdealHyp, fMCTrackArray, fMvdBranchName, fNumIt, fPerpPlane, fPropagateDistance, fPropagateToIP, fTrackArray, fTrackInBranchName, fTrackOutBranchName, fUseGeane, fVerbose, PndPersistencyTask::GetPersistency(), PndRecoKalmanFit2::Init(), PndRecoDafFit2::Init(), pdg, PndRecoKalmanFit2::SetCentralTrackerBranchName(), PndRecoDafFit2::SetCentralTrackerBranchName(), PndRecoDafFit2::SetGeane(), PndRecoKalmanFit2::SetGeane(), PndRecoKalmanFit2::SetMvdBranchName(), PndRecoDafFit2::SetMvdBranchName(), PndRecoKalmanFit2::SetNumIterations(), PndRecoKalmanFit2::SetPerpPlane(), PndRecoDafFit2::SetPerpPlane(), PndRecoKalmanFit2::SetPropagateDistance(), PndRecoDafFit2::SetPropagateDistance(), PndRecoDafFit2::SetPropagateToIP(), PndRecoKalmanFit2::SetPropagateToIP(), PndRecoKalmanFit2::SetVerbose(), and PndRecoDafFit2::SetVerbose().

59 {
60 
61 
62  std::cout << " -I- PndRecoKalmanTask2:Init :: Using RKTrackRep" << std::endl;
63 
64 
65  if (!fDaf)
66  {
75  if (!fFitter->Init()) return kFATAL;
76  }
77  else
78  {
86  if (!fDafFitter->Init()) return kFATAL;
87  }
88 
89  //Get ROOT Manager
90  FairRootManager* ioman= FairRootManager::Instance();
91 
92  if(ioman==0)
93  {
94  Error("PndRecoKalmanTask2::Init","RootManager not instantiated!");
95  return kERROR;
96  }
97 
98  // Get input collection
99  fTrackArray=(TClonesArray*) ioman->GetObject(fTrackInBranchName);
100  if(fTrackArray==0)
101  {
102  Error("PndRecoKalmanTask2::Init","track-array not found!");
103  return kERROR;
104  }
105  if (fIdealHyp)
106  {
107  pdg = new TDatabasePDG();
108 // fTrackIDArray=(TClonesArray*) ioman->GetObject(fTrackInIDBranchName);
109 // if(fTrackIDArray==0)
110 // {
111 // Error("PndRecoKalmanTask2::Init","track ID array not found! It is not possible to run ideal particle hypothesis");
112 // return kERROR;
113 // }
114 
115  fMCTrackArray=(TClonesArray*) ioman->GetObject("MCTrack");
116  if(fMCTrackArray==0)
117  {
118  Error("PndRecoKalmanTask2::Init","MCTrack array not found! It is not possible to run ideal particle hypothesis");
119  return kERROR;
120  }
121  }
122 
123  ioman->Register(fTrackOutBranchName,"Gen", fFitTrackArray, GetPersistency());
124 
125  return kSUCCESS;
126 }
PndRecoDafFit2 * fDafFitter
Standard Kalman Filter class.
void SetGeane(Bool_t opt=kTRUE)
int fVerbose
Definition: poormantracks.C:24
TString fTrackInBranchName
Output TCA for track.
void SetNumIterations(Int_t num)
TClonesArray * fMCTrackArray
Input TCA for PndTrack.
Bool_t fPropagateToIP
Flag to use Deterministic Annealing.
void SetPropagateToIP(Bool_t opt=kTRUE)
TDatabasePDG * pdg
Deterministic Annealing class.
TString fTrackOutBranchName
Name of the input TCA.
Bool_t fPerpPlane
Distance in [cm] to back-propagate the parameters, negative number means no backpropagation.
void SetMvdBranchName(const TString &name)
TClonesArray * fTrackArray
Bool_t fUseGeane
Particle DB.
void SetVerbose(Int_t verb)
void SetMvdBranchName(const TString &name)
Float_t fPropagateDistance
Flag to propagate the parameters to the interaction point (kTRUE)
Int_t fNumIt
Flag to use as initial plane the one perpendicular to the track (kFALSE)
void SetPropagateToIP(Bool_t opt=kTRUE)
TString fMvdBranchName
Name of the output TCA.
PndRecoKalmanFit2 * fFitter
Name of the TCA for central tracker.
Bool_t fIdealHyp
Flag to set on smoothing (not used)
void SetCentralTrackerBranchName(const TString &name)
void SetVerbose(Int_t verb)
void SetPropagateDistance(Float_t opt=-1.f)
void SetGeane(Bool_t opt=kTRUE)
TClonesArray * fFitTrackArray
Input TCA for PndMCTrack.
void SetPerpPlane(Bool_t opt=kTRUE)
void SetCentralTrackerBranchName(const TString &name)
void SetPropagateDistance(Float_t opt=-1.f)
TString fCentralTrackerBranchName
Name of the TCA for MVD.
Bool_t fDaf
Flag to use MC particle hypothesis.
void SetPerpPlane(Bool_t opt=kTRUE)
void PndRecoKalmanTask2::SetBusyCut ( Int_t  b)
inline
void PndRecoKalmanTask2::SetCentralTrackerBranchName ( const TString name)
inline

Definition at line 50 of file PndRecoKalmanTask2.h.

References fCentralTrackerBranchName, and name.

TString name
TString fCentralTrackerBranchName
Name of the TCA for MVD.
void PndRecoKalmanTask2::SetDaf ( Bool_t  opt = kTRUE)
inline

Definition at line 53 of file PndRecoKalmanTask2.h.

References fDaf.

53 { fDaf = opt; }
Bool_t fDaf
Flag to use MC particle hypothesis.
void PndRecoKalmanTask2::SetGeane ( Bool_t  opt = kTRUE)
inline

Definition at line 51 of file PndRecoKalmanTask2.h.

References fUseGeane.

51 { fUseGeane = opt; }
Bool_t fUseGeane
Particle DB.
void PndRecoKalmanTask2::SetIdealHyp ( Bool_t  opt = kTRUE)
inline

Definition at line 52 of file PndRecoKalmanTask2.h.

References fIdealHyp.

52 { fIdealHyp = opt; }
Bool_t fIdealHyp
Flag to set on smoothing (not used)
void PndRecoKalmanTask2::SetMvdBranchName ( const TString name)
inline

Definition at line 49 of file PndRecoKalmanTask2.h.

References fMvdBranchName, and name.

49 { fMvdBranchName = name; }
TString fMvdBranchName
Name of the output TCA.
TString name
void PndRecoKalmanTask2::SetNumIterations ( Int_t  num)
inline

Definition at line 57 of file PndRecoKalmanTask2.h.

References fNumIt, and num.

Referenced by reco_complete().

57 { fNumIt = num; }
int num[96]
Definition: ranlxd.cxx:381
Int_t fNumIt
Flag to use as initial plane the one perpendicular to the track (kFALSE)
void PndRecoKalmanTask2::SetParContainers ( )

Definition at line 128 of file PndRecoKalmanTask2.cxx.

References rtdb.

128  {
129  FairRuntimeDb* rtdb = FairRunAna::Instance()->GetRuntimeDb();
130  rtdb->getContainer("PndGeoSttPar");
131  rtdb->getContainer("PndGeoFtsPar");
132 }
FairRuntimeDb * rtdb
Definition: hit_dirc.C:66
void PndRecoKalmanTask2::SetParticleHypo ( TString  s)

Definition at line 249 of file PndRecoKalmanTask2.cxx.

References fPDGHyp.

250 {
251  // Set the hypothesis for the fit, charge will be applied later
252  if(h.BeginsWith("e") || h.BeginsWith("E")){
253  fPDGHyp=-11; //electrons
254  }else if(h.BeginsWith("m") || h.BeginsWith("M")){
255  fPDGHyp=-13; //muons
256  }else if(h.BeginsWith("pi") || h.BeginsWith("Pi") || h.BeginsWith("PI")){
257  fPDGHyp=211; //pions
258  }else if(h.BeginsWith("K") || h.BeginsWith("K")){
259  fPDGHyp=321; //kaons
260  }else if(h.BeginsWith("p") || h.BeginsWith("P") || h.BeginsWith("antip")){
261  fPDGHyp=2212; //protons/antiprotons
262  }else{
263  std::cout << "-I- PndRecoKalmanTask2::SetParticleHypo: Not recognised PID set -> Using default MUON hypothesis" << std::endl;
264  fPDGHyp=-13; // Muon is default.
265  }
266 }
Int_t fPDGHyp
Number of iterations.
void PndRecoKalmanTask2::SetParticleHypo ( Int_t  h)

Definition at line 268 of file PndRecoKalmanTask2.cxx.

References fPDGHyp.

269 {
270  switch (abs(h))
271  {
272  case 11:
273  fPDGHyp = -11;
274  break;
275  case 13:
276  fPDGHyp = -13;
277  break;
278  case 211:
279  fPDGHyp = 211;
280  break;
281  case 321:
282  fPDGHyp = 321;
283  break;
284  case 2212:
285  fPDGHyp = 2212;
286  break;
287  default:
288  std::cout << "-I- PndRecoKalmanTask2::SetParticleHypo: Not recognised PID set -> Using default MUON hypothesis" << std::endl;
289  fPDGHyp = -13;
290  break;
291  }
292 }
Int_t fPDGHyp
Number of iterations.
void PndRecoKalmanTask2::SetPerpPlane ( Bool_t  opt = kTRUE)
inline

Definition at line 56 of file PndRecoKalmanTask2.h.

References fPerpPlane.

56 { fPerpPlane = opt; }
Bool_t fPerpPlane
Distance in [cm] to back-propagate the parameters, negative number means no backpropagation.
void PndPersistencyTask::SetPersistency ( Bool_t  val = kTRUE)
inlineinherited

Definition at line 31 of file PndPersistencyTask.h.

References PndPersistencyTask::fPersistency, and val.

Referenced by barrelTrackFinder(), digi_complete(), digi_complete_newSTT(), digiOnly_complete(), PndBarrelTrackFinder::PndBarrelTrackFinder(), PndCATracking::PndCATracking(), PndDrcHitFinder::PndDrcHitFinder(), PndEmc2DLocMaxFinder::PndEmc2DLocMaxFinder(), PndEmcExpClusterSplitter::PndEmcExpClusterSplitter(), PndEmcFullDigiTask::PndEmcFullDigiTask(), PndEmcFWEndcapDigi::PndEmcFWEndcapDigi(), PndEmcFWEndcapTimebasedWaveforms::PndEmcFWEndcapTimebasedWaveforms(), PndEmcHitProducer::PndEmcHitProducer(), PndEmcHitsToWaveform::PndEmcHitsToWaveform(), PndEmcMakeBump::PndEmcMakeBump(), PndEmcMakeCluster::PndEmcMakeCluster(), PndEmcMakeClusterOnline::PndEmcMakeClusterOnline(), PndEmcMakeDigi::PndEmcMakeDigi(), PndEmcMakeRecoHit::PndEmcMakeRecoHit(), PndEmcMultiWaveformToCalibratedDigi::PndEmcMultiWaveformToCalibratedDigi(), PndEmcPhiBumpSplitter::PndEmcPhiBumpSplitter(), PndEmcTmpWaveformToDigi::PndEmcTmpWaveformToDigi(), PndEmcWaveformToCalibratedDigi::PndEmcWaveformToCalibratedDigi(), PndEmcWaveformToDigi::PndEmcWaveformToDigi(), PndFtofHitProducerIdeal::PndFtofHitProducerIdeal(), PndFtsCATracking::PndFtsCATracking(), PndFtsHitProducerIdeal::PndFtsHitProducerIdeal(), PndFtsHitProducerRealFast::PndFtsHitProducerRealFast(), PndFtsHitProducerRealFull::PndFtsHitProducerRealFull(), PndFtsHoughTrackerTask::PndFtsHoughTrackerTask(), PndGemDigitize::PndGemDigitize(), PndGemFindHits::PndGemFindHits(), PndIdealTrackFinder::PndIdealTrackFinder(), PndLmdPixelClusterTask::PndLmdPixelClusterTask(), PndLmdPixelHitProducerFast::PndLmdPixelHitProducerFast(), PndMdtClusterTask::PndMdtClusterTask(), PndMdtDigitization::PndMdtDigitization(), PndMdtHitProducerIdeal::PndMdtHitProducerIdeal(), PndMdtPointsToWaveform::PndMdtPointsToWaveform(), PndMdtTrkProducer::PndMdtTrkProducer(), PndMissingPzCleanerTask::PndMissingPzCleanerTask(), PndMvdGemTrackFinderOnHits::PndMvdGemTrackFinderOnHits(), PndMvdHitProducerIdeal::PndMvdHitProducerIdeal(), PndMvdPixelClusterTask::PndMvdPixelClusterTask(), PndMvdTimeWalkCorrTask::PndMvdTimeWalkCorrTask(), PndMvdToPix4ClusterTask::PndMvdToPix4ClusterTask(), PndRecoKalmanTask::PndRecoKalmanTask(), PndRecoKalmanTask2(), PndRecoMultiKalmanTask::PndRecoMultiKalmanTask(), PndRecoMultiKalmanTask2::PndRecoMultiKalmanTask2(), PndRichHitFinder::PndRichHitFinder(), PndRichHitProducer::PndRichHitProducer(), PndSciTDigiTask::PndSciTDigiTask(), PndSciTHitProducerIdeal::PndSciTHitProducerIdeal(), PndSdsHitProducerIdeal::PndSdsHitProducerIdeal(), PndSdsHybridHitProducer::PndSdsHybridHitProducer(), PndSdsIdealClusterTask::PndSdsIdealClusterTask(), PndSdsIdealRecoTask::PndSdsIdealRecoTask(), PndSdsNoiseProducer::PndSdsNoiseProducer(), PndSdsPixelClusterTask::PndSdsPixelClusterTask(), PndSdsStripClusterTask::PndSdsStripClusterTask(), PndSdsStripHitProducer::PndSdsStripHitProducer(), PndSdsTimeWalkCorrTask::PndSdsTimeWalkCorrTask(), PndSttFindTracks::PndSttFindTracks(), PndSttHelixHitProducer::PndSttHelixHitProducer(), PndSttHitProducerIdeal::PndSttHitProducerIdeal(), PndSttHitProducerRealFast::PndSttHitProducerRealFast(), PndSttHitProducerRealFull::PndSttHitProducerRealFull(), PndSttMatchTracks::PndSttMatchTracks(), PndSttMvdGemTracking::PndSttMvdGemTracking(), PndTrackSmearTask::PndTrackSmearTask(), PndTrkTracking2::PndTrkTracking2(), reco(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), recoideal_complete(), PndMvdClusterTask::SetPersistance(), PndMvdDigiTask::SetPersistance(), PndLmdPixelHitProducerFast::SetPersistance(), PndSdsHitProducerIdeal::SetPersistance(), PndSttMvdGemTracking::SetPersistenc(), PndMdtClusterTask::SetPersistence(), PndSttHelixHitProducer::SetPersistence(), PndMissingPzCleanerTask::SetPersistence(), PndFtsHitProducerRealFast::SetPersistence(), PndFtsHitProducerRealFull::SetPersistence(), PndSttHitProducerRealFull::SetPersistence(), PndSttHitProducerIdeal::SetPersistence(), PndSttHitProducerRealFast::SetPersistence(), PndFtsHitProducerIdeal::SetPersistence(), PndTrackSmearTask::SetPersistence(), PndSciTHitProducerIdeal::SetPersistence(), PndIdealTrackFinder::SetPersistence(), PndSttMatchTracks::SetPersistence(), PndSttFindTracks::SetPersistence(), PndFtsHoughTrackerTask::SetPersistence(), PndTrkTracking2::SetPersistence(), PndEmcMakeRecoHit::SetStorageOfData(), PndEmcFWEndcapDigi::SetStorageOfData(), PndEmcMakeClusterOnline::SetStorageOfData(), PndEmcFWEndcapTimebasedWaveforms::SetStorageOfData(), PndEmcMakeDigi::SetStorageOfData(), PndMdtPointsToWaveform::SetStorageOfData(), PndEmc2DLocMaxFinder::SetStorageOfData(), PndEmcMakeCluster::SetStorageOfData(), PndEmcHitsToWaveform::SetStorageOfData(), PndEmcMakeBump::SetStorageOfData(), PndEmcTmpWaveformToDigi::SetStorageOfData(), PndEmcWaveformToDigi::SetStorageOfData(), PndEmcWaveformToCalibratedDigi::SetStorageOfData(), PndEmcMultiWaveformToCalibratedDigi::SetStorageOfData(), PndEmcExpClusterSplitter::SetStorageOfData(), PndEmcPhiBumpSplitter::SetStorageOfData(), standard_tracking(), and PndEmcFullDigiTask::StoreDigi().

31 { fPersistency = val; }
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
void PndRecoKalmanTask2::SetPropagateDistance ( Float_t  opt = -1.)
inline

Definition at line 55 of file PndRecoKalmanTask2.h.

References fPropagateDistance.

55 { fPropagateDistance = opt; }
Float_t fPropagateDistance
Flag to propagate the parameters to the interaction point (kTRUE)
void PndRecoKalmanTask2::SetPropagateToIP ( Bool_t  opt = kTRUE)
inline

Definition at line 54 of file PndRecoKalmanTask2.h.

References fPropagateToIP.

54 { fPropagateToIP = opt; }
Bool_t fPropagateToIP
Flag to use Deterministic Annealing.
void PndRecoKalmanTask2::SetTrackInBranchName ( const TString name)
inline
void PndRecoKalmanTask2::SetTrackOutBranchName ( const TString name)
inline

Member Data Documentation

Int_t PndRecoKalmanTask2::fBusyCut
protected

Hypothesis.

Definition at line 95 of file PndRecoKalmanTask2.h.

Referenced by Exec(), and SetBusyCut().

TString PndRecoKalmanTask2::fCentralTrackerBranchName
protected

Name of the TCA for MVD.

Definition at line 80 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetCentralTrackerBranchName().

Bool_t PndRecoKalmanTask2::fDaf
protected

Flag to use MC particle hypothesis.

Definition at line 89 of file PndRecoKalmanTask2.h.

Referenced by Exec(), Init(), and SetDaf().

PndRecoDafFit2* PndRecoKalmanTask2::fDafFitter
protected

Standard Kalman Filter class.

Definition at line 83 of file PndRecoKalmanTask2.h.

Referenced by Exec(), Init(), and PndRecoKalmanTask2().

PndRecoKalmanFit2* PndRecoKalmanTask2::fFitter
protected

Name of the TCA for central tracker.

Definition at line 82 of file PndRecoKalmanTask2.h.

Referenced by Exec(), Init(), and PndRecoKalmanTask2().

TClonesArray* PndRecoKalmanTask2::fFitTrackArray
protected

Input TCA for PndMCTrack.

Definition at line 73 of file PndRecoKalmanTask2.h.

Referenced by Exec(), Init(), and PndRecoKalmanTask2().

Bool_t PndRecoKalmanTask2::fIdealHyp
protected

Flag to set on smoothing (not used)

Definition at line 88 of file PndRecoKalmanTask2.h.

Referenced by Exec(), Init(), and SetIdealHyp().

TClonesArray* PndRecoKalmanTask2::fMCTrackArray
protected

Input TCA for PndTrack.

Definition at line 72 of file PndRecoKalmanTask2.h.

Referenced by Exec(), and Init().

TString PndRecoKalmanTask2::fMvdBranchName
protected

Name of the output TCA.

Definition at line 79 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetMvdBranchName().

Int_t PndRecoKalmanTask2::fNumIt
protected

Flag to use as initial plane the one perpendicular to the track (kFALSE)

Definition at line 93 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetNumIterations().

Int_t PndRecoKalmanTask2::fPDGHyp
protected

Number of iterations.

Definition at line 94 of file PndRecoKalmanTask2.h.

Referenced by Exec(), and SetParticleHypo().

Bool_t PndRecoKalmanTask2::fPerpPlane
protected

Distance in [cm] to back-propagate the parameters, negative number means no backpropagation.

Definition at line 92 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetPerpPlane().

Float_t PndRecoKalmanTask2::fPropagateDistance
protected

Flag to propagate the parameters to the interaction point (kTRUE)

Definition at line 91 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetPropagateDistance().

Bool_t PndRecoKalmanTask2::fPropagateToIP
protected

Flag to use Deterministic Annealing.

Definition at line 90 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetPropagateToIP().

Bool_t PndRecoKalmanTask2::fSmoothing
protected

Flag to use Geane.

Definition at line 87 of file PndRecoKalmanTask2.h.

TClonesArray* PndRecoKalmanTask2::fTrackArray
protected

Definition at line 70 of file PndRecoKalmanTask2.h.

Referenced by Exec(), and Init().

TString PndRecoKalmanTask2::fTrackInBranchName
protected

Output TCA for track.

Definition at line 75 of file PndRecoKalmanTask2.h.

Referenced by Exec(), Init(), and SetTrackInBranchName().

TString PndRecoKalmanTask2::fTrackOutBranchName
protected

Name of the input TCA.

Definition at line 77 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetTrackOutBranchName().

Bool_t PndRecoKalmanTask2::fUseGeane
protected

Particle DB.

Definition at line 86 of file PndRecoKalmanTask2.h.

Referenced by Init(), and SetGeane().

TDatabasePDG* PndRecoKalmanTask2::pdg
protected

Deterministic Annealing class.

Definition at line 84 of file PndRecoKalmanTask2.h.

Referenced by Exec(), and Init().


The documentation for this class was generated from the following files: