CMS 3D CMS Logo

Public Member Functions

ConfigurableAdaptiveFitter Class Reference

#include <ConfigurableAdaptiveFitter.h>

Inheritance diagram for ConfigurableAdaptiveFitter:
AbstractConfFitter VertexFitter< 5 >

List of all members.

Public Member Functions

ConfigurableAdaptiveFitterclone () const
 ConfigurableAdaptiveFitter ()
 ConfigurableAdaptiveFitter (const ConfigurableAdaptiveFitter &o)
void configure (const edm::ParameterSet &)
edm::ParameterSet defaults () const
 ~ConfigurableAdaptiveFitter ()

Detailed Description

Wrap any VertexFitter into the VertexReconstructor interface

Definition at line 10 of file ConfigurableAdaptiveFitter.h.


Constructor & Destructor Documentation

ConfigurableAdaptiveFitter::ConfigurableAdaptiveFitter ( )

Values that are respected: sigmacut: The sqrt(chi2_cut) criterion. Default: 3.0 ratio: The annealing ratio. Default: 0.25 Tini: The initial temparature. Default: 256

Definition at line 36 of file ConfigurableAdaptiveFitter.cc.

Referenced by clone().

ConfigurableAdaptiveFitter::ConfigurableAdaptiveFitter ( const ConfigurableAdaptiveFitter o)

Definition at line 77 of file ConfigurableAdaptiveFitter.cc.

                                             :
  AbstractConfFitter ( o )
{}
ConfigurableAdaptiveFitter::~ConfigurableAdaptiveFitter ( )

Definition at line 68 of file ConfigurableAdaptiveFitter.cc.

{
  /*
  if (theFitter) delete theFitter;
  theFitter=0;
  */
}

Member Function Documentation

ConfigurableAdaptiveFitter * ConfigurableAdaptiveFitter::clone ( void  ) const [virtual]

Fit vertex out of a VertexSeed

Implements AbstractConfFitter.

Definition at line 81 of file ConfigurableAdaptiveFitter.cc.

References ConfigurableAdaptiveFitter().

{
  return new ConfigurableAdaptiveFitter ( *this );
}
void ConfigurableAdaptiveFitter::configure ( const edm::ParameterSet n) [virtual]

Implements AbstractConfFitter.

Definition at line 40 of file ConfigurableAdaptiveFitter.cc.

References edm::ParameterSet::augment(), edm::ParameterSet::getParameter(), m, n, asciidump::s, AdaptiveVertexFitter::setParameters(), and AbstractConfFitter::theFitter.

{
  edm::ParameterSet m=n;
  m.augment ( mydefaults() );
  ConfigurableAnnealing ann ( m );
  DefaultLinearizationPointFinder linpt;
  // ZeroLinearizationPointFinder linpt;
  // KalmanVertexFitter kvf;
  // GenericLinearizationPointFinder linpt ( kvf );
  KalmanVertexUpdator<5> updator;
  bool s=m.getParameter< bool >("smoothing");
  VertexSmoother<5> * smoother=0;
  if ( s )
  {
    smoother = new KalmanVertexSmoother ();
  } else {
    smoother = new DummyVertexSmoother<5> ();
  }
  KalmanVertexTrackCompatibilityEstimator<5> estimator;

  if (theFitter) delete theFitter;
  AdaptiveVertexFitter * fitter = new AdaptiveVertexFitter ( ann, linpt, updator, estimator, *smoother );
  delete smoother;
  fitter->setParameters ( m );
  theFitter=fitter;
}
edm::ParameterSet ConfigurableAdaptiveFitter::defaults ( ) const [virtual]

Implements AbstractConfFitter.

Definition at line 86 of file ConfigurableAdaptiveFitter.cc.

{
  return mydefaults();
}