CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
AnnealingSchedule Class Referenceabstract

#include <AnnealingSchedule.h>

Inheritance diagram for AnnealingSchedule:
ConfigurableAnnealing DeterministicAnnealing GeometricAnnealing DefaultMVFAnnealing

Public Member Functions

virtual void anneal ()=0
 
virtual AnnealingScheduleclone () const =0
 
virtual double currentTemp () const =0
 
virtual double cutoff () const =0
 
virtual void debug () const =0
 
virtual double initialTemp () const =0
 
virtual bool isAnnealed () const =0
 
virtual double phi (double chi2) const =0
 
virtual void resetAnnealing ()=0
 
virtual double weight (double chi2) const =0
 
virtual ~AnnealingSchedule ()
 

Detailed Description

Definition at line 6 of file AnnealingSchedule.h.

Constructor & Destructor Documentation

virtual AnnealingSchedule::~AnnealingSchedule ( )
inlinevirtual

Abstract base class that is implemented by the different annealing schedules.

Definition at line 12 of file AnnealingSchedule.h.

12 {};

Member Function Documentation

virtual void AnnealingSchedule::anneal ( )
pure virtual
virtual AnnealingSchedule* AnnealingSchedule::clone ( ) const
pure virtual
virtual double AnnealingSchedule::currentTemp ( ) const
pure virtual
virtual double AnnealingSchedule::cutoff ( ) const
pure virtual
virtual void AnnealingSchedule::debug ( ) const
pure virtual
virtual double AnnealingSchedule::initialTemp ( ) const
pure virtual
virtual bool AnnealingSchedule::isAnnealed ( ) const
pure virtual

Returns phi(chi2) / ( phi(cutoff^2) + sum_i { phi(chi2s[i]) } ) is it annealed yet?

Implemented in GeometricAnnealing, DeterministicAnnealing, and ConfigurableAnnealing.

Referenced by MultiVertexFitter::fit(), AdaptiveVertexFitter::fit(), and ConfigurableAnnealing::isAnnealed().

virtual double AnnealingSchedule::phi ( double  chi2) const
pure virtual

phi ( chi2 ) = e^( -.5*chi2 / T )

Implemented in DeterministicAnnealing, GeometricAnnealing, and ConfigurableAnnealing.

Referenced by ConfigurableAnnealing::phi(), and MultiVertexFitter::updateWeights().

virtual void AnnealingSchedule::resetAnnealing ( )
pure virtual
virtual double AnnealingSchedule::weight ( double  chi2) const
pure virtual