CMS 3D CMS Logo

KinematicParticleFitter Class Reference

Class making kinematic fit of the particle inside the KinematicTree. More...

#include <RecoVertex/KinematicFit/interface/KinematicParticleFitter.h>

List of all members.

Public Member Functions

RefCountedKinematicTree fit (KinematicConstraint *cs, RefCountedKinematicTree tree) const
 Method refitting a top particle of the single tree.
vector< RefCountedKinematicTreefit (KinematicConstraint *cs, vector< RefCountedKinematicTree > trees) const
 Method applying the constraint to the _TOP_ particle inside the Kinematic Tree.
 KinematicParticleFitter (const ParentParticleFitter &fitter, const ChildUpdator &updator)
 Constructor allowing use of any fitter-updator pair implemented.
 KinematicParticleFitter ()
 Default constructor using LMS with Lagrange multipliers for particle refit.
 ~KinematicParticleFitter ()

Private Attributes

ChildUpdatorcUpdator
ParentParticleFitterparentFitter


Detailed Description

Class making kinematic fit of the particle inside the KinematicTree.

The daughter states of the tree get automathically refitted according to the changes done to mother state. Mechanism is split in 2 parts: ParentParticleFitter to fit the mother particle and ChildUpdator to update the states of daughter particles. Child updator is currently not implemented. Fitter is designed to use any user provided algorithm for state refit.

Definition at line 23 of file KinematicParticleFitter.h.


Constructor & Destructor Documentation

KinematicParticleFitter::KinematicParticleFitter (  ) 

Default constructor using LMS with Lagrange multipliers for particle refit.

Definition at line 5 of file KinematicParticleFitter.cc.

References cUpdator, and parentFitter.

00006 {
00007  parentFitter = new LagrangeParentParticleFitter();
00008  cUpdator = new LagrangeChildUpdator();
00009 }

KinematicParticleFitter::KinematicParticleFitter ( const ParentParticleFitter fitter,
const ChildUpdator updator 
)

Constructor allowing use of any fitter-updator pair implemented.

Definition at line 11 of file KinematicParticleFitter.cc.

References ChildUpdator::clone(), ParentParticleFitter::clone(), cUpdator, and parentFitter.

00012 {
00013  parentFitter = fitter.clone();
00014  cUpdator = updator.clone();
00015 }

KinematicParticleFitter::~KinematicParticleFitter (  ) 

Definition at line 17 of file KinematicParticleFitter.cc.

References cUpdator, and parentFitter.

00018 {
00019  delete parentFitter;
00020  delete cUpdator;
00021 }


Member Function Documentation

RefCountedKinematicTree KinematicParticleFitter::fit ( KinematicConstraint cs,
RefCountedKinematicTree  tree 
) const

Method refitting a top particle of the single tree.

for backup compatibility and constraints not allowing multiple track refits.

Definition at line 31 of file KinematicParticleFitter.cc.

References cUpdator, ParentParticleFitter::fit(), parentFitter, and ChildUpdator::update().

00033 {
00034  vector<RefCountedKinematicTree> trees;
00035  trees.push_back(tree);
00036  vector<RefCountedKinematicTree> tr = parentFitter->fit(trees,cs);
00037  tr = cUpdator->update(tr);
00038  return tr.front();
00039 }

vector< RefCountedKinematicTree > KinematicParticleFitter::fit ( KinematicConstraint cs,
vector< RefCountedKinematicTree trees 
) const

Method applying the constraint to the _TOP_ particle inside the Kinematic Tree.

Tree containing the refitted state is returned. The initial state of the particle and constraint applyed are stored in particle's corresponding data memebers

Definition at line 23 of file KinematicParticleFitter.cc.

References cUpdator, ParentParticleFitter::fit(), parentFitter, and ChildUpdator::update().

Referenced by KineExample::analyze().

00025 {
00026  vector<RefCountedKinematicTree> tr = parentFitter->fit(trees,cs);
00027  tr = cUpdator->update(tr);
00028  return tr;
00029 } 


Member Data Documentation

ChildUpdator* KinematicParticleFitter::cUpdator [private]

Definition at line 65 of file KinematicParticleFitter.h.

Referenced by fit(), KinematicParticleFitter(), and ~KinematicParticleFitter().

ParentParticleFitter* KinematicParticleFitter::parentFitter [private]

Definition at line 64 of file KinematicParticleFitter.h.

Referenced by fit(), KinematicParticleFitter(), and ~KinematicParticleFitter().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:26:22 2009 for CMSSW by  doxygen 1.5.4