#include <LagrangeParentParticleFitter.h>
Public Member Functions | |
LagrangeParentParticleFitter * | clone () const override |
std::vector< RefCountedKinematicTree > | fit (const std::vector< RefCountedKinematicTree > &trees, KinematicConstraint *cs) const override |
LagrangeParentParticleFitter () | |
void | setParameters (const edm::ParameterSet &pSet) |
~LagrangeParentParticleFitter () override | |
Public Member Functions inherited from ParentParticleFitter | |
ParentParticleFitter () | |
virtual | ~ParentParticleFitter () |
Private Member Functions | |
void | defaultParameters () |
Private Attributes | |
float | theMaxDiff |
int | theMaxStep |
KinematicParticle refit via LMS minimization with Lagrange multipliers method. Tunable for number of iterations and stopping condition. Every new iteration takes the result of previous iteration as a linearization point. This is only needed in case of nonlinear constraints. In the linear case result will be reached after the first step. Stopping condition at the moment: sum of abs. constraint equations values at given point
Definition at line 18 of file LagrangeParentParticleFitter.h.
LagrangeParentParticleFitter::LagrangeParentParticleFitter | ( | ) |
Definition at line 6 of file LagrangeParentParticleFitter.cc.
References defaultParameters().
Referenced by clone().
|
inlineoverride |
Definition at line 25 of file LagrangeParentParticleFitter.h.
References fwrapper::cs, fit(), and setParameters().
|
inlineoverridevirtual |
Clone method
Implements ParentParticleFitter.
Definition at line 44 of file LagrangeParentParticleFitter.h.
References defaultParameters(), and LagrangeParentParticleFitter().
|
private |
Definition at line 282 of file LagrangeParentParticleFitter.cc.
References theMaxDiff, and theMaxStep.
Referenced by clone(), and LagrangeParentParticleFitter().
|
overridevirtual |
Refit method taking KinematicConstraint and vector of trees as imput. Only top particles of corresponding trees are refitted, vertex is not created. Number of trees should be one (single track refit) or greater (multiple track refit). Some constraints may not work with single tracks (back to back for ex.)
Implements ParentParticleFitter.
Definition at line 121 of file LagrangeParentParticleFitter.cc.
References funct::abs(), KinematicConstraint::clone(), KinematicConstraint::derivative(), KinematicConstraint::deviations(), runTauDisplay::dr, mps_fire::i, gen::k, LogDebug, KinematicParametersError::matrix(), KinematicConstraint::numberOfEquations(), InputSort::sort(), theMaxDiff, theMaxStep, KinematicConstraint::value(), and KinematicVertexFactory::vertex().
Referenced by trackingPlots.Iteration::modules(), and ~LagrangeParentParticleFitter().
void LagrangeParentParticleFitter::setParameters | ( | const edm::ParameterSet & | pSet | ) |
Configuration through PSet: number of iterations(maxDistance) and stopping condition (maxNbrOfIterations)
Definition at line 276 of file LagrangeParentParticleFitter.cc.
References edm::ParameterSet::getParameter(), theMaxDiff, and theMaxStep.
Referenced by ~LagrangeParentParticleFitter().
|
private |
Definition at line 51 of file LagrangeParentParticleFitter.h.
Referenced by defaultParameters(), fit(), and setParameters().
|
private |
Definition at line 52 of file LagrangeParentParticleFitter.h.
Referenced by defaultParameters(), fit(), and setParameters().