CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
ConstrainedTreeBuilderT Class Reference

#include <ConstrainedTreeBuilderT.h>

Public Member Functions

template<int nTrk>
RefCountedKinematicTree buildTree (const std::vector< RefCountedKinematicParticle > &initialParticles, const std::vector< KinematicState > &finalStates, const RefCountedKinematicVertex vtx, const ROOT::Math::SMatrix< double, 3+7 *nTrk, 3+7 *nTrk, ROOT::Math::MatRepSym< double, 3+7 *nTrk > > &fCov) const
 
 ConstrainedTreeBuilderT ()
 
 ~ConstrainedTreeBuilderT ()
 

Private Member Functions

RefCountedKinematicTree buildRealTree (const RefCountedKinematicParticle virtualParticle, const RefCountedKinematicVertex vtx, const std::vector< RefCountedKinematicParticle > &particles) const
 

Static Private Member Functions

template<int nTrk>
static AlgebraicSymMatrix77 covarianceMatrix (const std::vector< RefCountedKinematicParticle > &rPart, const AlgebraicVector7 &newPar, const ROOT::Math::SMatrix< double, 3+7 *nTrk, 3+7 *nTrk, ROOT::Math::MatRepSym< double, 3+7 *nTrk > > &fitCov)
 

Private Attributes

VirtualKinematicParticleFactory pFactory
 
KinematicVertexFactory vFactory
 

Detailed Description

Class constructing te final output tree for the constrained vertex fitter. To be used by corresponding fitter only. Tree builders are scheduled for generalization: They should be inherited from the single generic class in the next version of the library.

Definition at line 15 of file ConstrainedTreeBuilderT.h.

Constructor & Destructor Documentation

ConstrainedTreeBuilderT::ConstrainedTreeBuilderT ( )
inline

Definition at line 20 of file ConstrainedTreeBuilderT.h.

ConstrainedTreeBuilderT::~ConstrainedTreeBuilderT ( )
inline

Definition at line 22 of file ConstrainedTreeBuilderT.h.

Member Function Documentation

RefCountedKinematicTree ConstrainedTreeBuilderT::buildRealTree ( const RefCountedKinematicParticle  virtualParticle,
const RefCountedKinematicVertex  vtx,
const std::vector< RefCountedKinematicParticle > &  particles 
) const
private

Definition at line 8 of file ConstrainedTreeBuilderT.cc.

References KinematicTree::movePointerToTheTop(), KinematicTree::replaceCurrentParticle(), MainPageGenerator::tree, KinematicVertexFactory::vertex(), and vFactory.

10 {
11 
12 //making a resulting tree:
14 
15 //fake production vertex:
17  resTree->addParticle(fVertex, vtx, virtualParticle);
18 
19 //adding final state
20  for(std::vector<RefCountedKinematicParticle>::const_iterator il = particles.begin(); il != particles.end(); il++)
21  {
22  if((*il)->previousParticle()->correspondingTree() != 0)
23  {
24  KinematicTree * tree = (*il)->previousParticle()->correspondingTree();
25  tree->movePointerToTheTop();
26  tree->replaceCurrentParticle(*il);
27  RefCountedKinematicVertex cdVertex = resTree->currentDecayVertex();
28  resTree->addTree(cdVertex, tree);
29  }else{
31  resTree->addParticle(vtx,ffVertex,*il);
32  }
33  }
34  return resTree;
35 }
void replaceCurrentParticle(RefCountedKinematicParticle newPart) const
KinematicVertexFactory vFactory
void movePointerToTheTop() const
static RefCountedKinematicVertex vertex(const VertexState &state, float totalChiSq, float degreesOfFr)
template<int nTrk>
RefCountedKinematicTree ConstrainedTreeBuilderT::buildTree ( const std::vector< RefCountedKinematicParticle > &  initialParticles,
const std::vector< KinematicState > &  finalStates,
const RefCountedKinematicVertex  vtx,
const ROOT::Math::SMatrix< double, 3+7 *nTrk, 3+7 *nTrk, ROOT::Math::MatRepSym< double, 3+7 *nTrk > > &  fCov 
) const

Method constructing tree out of set of refitted states, vertex, and full covariance matrix.

Definition at line 60 of file ConstrainedTreeBuilderT.h.

template<int nTrk>
AlgebraicSymMatrix77 ConstrainedTreeBuilderT::covarianceMatrix ( const std::vector< RefCountedKinematicParticle > &  rPart,
const AlgebraicVector7 newPar,
const ROOT::Math::SMatrix< double, 3+7 *nTrk, 3+7 *nTrk, ROOT::Math::MatRepSym< double, 3+7 *nTrk > > &  fitCov 
)
staticprivate

Metod to reconstruct the full covariance matrix of the resulting particle.

Definition at line 184 of file ConstrainedTreeBuilderT.h.

Member Data Documentation

VirtualKinematicParticleFactory ConstrainedTreeBuilderT::pFactory
private

Definition at line 50 of file ConstrainedTreeBuilderT.h.

KinematicVertexFactory ConstrainedTreeBuilderT::vFactory
private

Definition at line 51 of file ConstrainedTreeBuilderT.h.

Referenced by buildRealTree().