CMS 3D CMS Logo

ConfigurableAnnealing.cc

Go to the documentation of this file.
00001 #include "RecoVertex/ConfigurableVertexReco/interface/ConfigurableAnnealing.h"
00002 #include "RecoVertex/VertexTools/interface/GeometricAnnealing.h"
00003 #include <string>
00004 
00005 using namespace std;
00006 
00007 ConfigurableAnnealing::ConfigurableAnnealing ( const edm::ParameterSet & m ) :
00008   theImpl( 0 )
00009 {
00010   string type = m.getParameter<string>("annealing");
00011   theImpl = new GeometricAnnealing(
00012                   m.getParameter<double>("sigmacut"),
00013                   m.getParameter<double>("Tini"),
00014                   m.getParameter<double>("ratio") );
00015 }
00016 
00017 ConfigurableAnnealing::ConfigurableAnnealing ( const ConfigurableAnnealing & o ) :
00018   theImpl ( o.theImpl->clone() )
00019 {}
00020 
00021 ConfigurableAnnealing * ConfigurableAnnealing::clone() const
00022 {
00023   return new ConfigurableAnnealing ( *this );
00024 }
00025 
00026 ConfigurableAnnealing::~ConfigurableAnnealing()
00027 {
00028   delete theImpl;
00029 }
00030 
00031 void ConfigurableAnnealing::debug() const
00032 {
00033   theImpl->debug();
00034 }
00035 
00036 void ConfigurableAnnealing::anneal()
00037 {
00038   theImpl->anneal();
00039 }
00040 
00041 double ConfigurableAnnealing::weight ( double chi2 ) const
00042 {
00043   return theImpl->weight ( chi2 );
00044 }
00045 
00046 void ConfigurableAnnealing::resetAnnealing()
00047 {
00048   theImpl->resetAnnealing();
00049 }
00050 
00051 inline double ConfigurableAnnealing::phi( double chi2 ) const
00052 {
00053   return theImpl->phi ( chi2 );
00054 }
00055 
00056 double ConfigurableAnnealing::cutoff() const
00057 {
00058   return theImpl->cutoff();
00059 }
00060 
00061 double ConfigurableAnnealing::currentTemp() const
00062 {
00063   return theImpl->currentTemp();
00064 }
00065 
00066 double ConfigurableAnnealing::initialTemp() const
00067 {
00068   return theImpl->initialTemp();
00069 }
00070 
00071 bool ConfigurableAnnealing::isAnnealed() const
00072 {
00073   return theImpl->isAnnealed();
00074 }

Generated on Tue Jun 9 17:46:04 2009 for CMSSW by  doxygen 1.5.4