CMS 3D CMS Logo

ConfigurableAnnealing.cc
Go to the documentation of this file.
5 #include <string>
6 
7 using namespace std;
8 
10  string type = m.getParameter<string>("annealing");
11  // edm::LogWarning("ConfigurableAnnealing") << "below one code ist still here.";
12  if (type == "below") {
13  edm::LogError("ConfigurableAnnealing") << "below one annealing employed!";
14  vector<float> sched;
15  double final = m.getParameter<double>("Tfinal");
16  sched.push_back(256.);
17  sched.push_back(64.);
18  sched.push_back(16.);
19  sched.push_back(4.);
20  sched.push_back(1.);
21  sched.push_back(final);
22  theImpl = new DeterministicAnnealing(sched, m.getParameter<double>("sigmacut"));
23  } else if (type == "geom") {
25  m.getParameter<double>("sigmacut"), m.getParameter<double>("Tini"), m.getParameter<double>("ratio"));
26  } else {
27  edm::LogError("ConfigurableAnnealing") << "annealing type " << type << " is not known.";
28  exit(-1);
29  }
30 }
31 
33 
35 
37 
39 
41 
42 double ConfigurableAnnealing::weight(double chi2) const { return theImpl->weight(chi2); }
43 
45 
46 inline double ConfigurableAnnealing::phi(double chi2) const { return theImpl->phi(chi2); }
47 
48 double ConfigurableAnnealing::cutoff() const { return theImpl->cutoff(); }
49 
51 
53 
MessageLogger.h
ConfigurableAnnealing::isAnnealed
bool isAnnealed() const override
Definition: ConfigurableAnnealing.cc:54
ConfigurableAnnealing::cutoff
double cutoff() const override
Definition: ConfigurableAnnealing.cc:48
AnnealingSchedule::isAnnealed
virtual bool isAnnealed() const =0
AnnealingSchedule::initialTemp
virtual double initialTemp() const =0
DeterministicAnnealing
Definition: DeterministicAnnealing.h:7
hltPixelTracks_cff.chi2
chi2
Definition: hltPixelTracks_cff.py:25
EcalTangentSkim_cfg.o
o
Definition: EcalTangentSkim_cfg.py:36
DeterministicAnnealing.h
clone
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
ConfigurableAnnealing::weight
double weight(double chi2) const override
Definition: ConfigurableAnnealing.cc:42
ConfigurableAnnealing::phi
double phi(double chi2) const override
Definition: ConfigurableAnnealing.cc:46
AnnealingSchedule::phi
virtual double phi(double chi2) const =0
ConfigurableAnnealing::~ConfigurableAnnealing
~ConfigurableAnnealing() override
Definition: ConfigurableAnnealing.cc:36
AnnealingSchedule::currentTemp
virtual double currentTemp() const =0
GeometricAnnealing.h
ConfigurableAnnealing::ConfigurableAnnealing
ConfigurableAnnealing(const edm::ParameterSet &)
Definition: ConfigurableAnnealing.cc:9
ConfigurableAnnealing::currentTemp
double currentTemp() const override
Definition: ConfigurableAnnealing.cc:50
ConfigurableAnnealing
Definition: ConfigurableAnnealing.h:8
ConfigurableAnnealing::anneal
void anneal() override
Definition: ConfigurableAnnealing.cc:40
edm::ParameterSet
Definition: ParameterSet.h:36
edm::LogError
Definition: MessageLogger.h:183
AnnealingSchedule::debug
virtual void debug() const =0
GeometricAnnealing
Definition: GeometricAnnealing.h:7
ConfigurableAnnealing::initialTemp
double initialTemp() const override
Definition: ConfigurableAnnealing.cc:52
ConfigurableAnnealing::theImpl
AnnealingSchedule * theImpl
Definition: ConfigurableAnnealing.h:31
ConfigurableAnnealing::resetAnnealing
void resetAnnealing() override
Definition: ConfigurableAnnealing.cc:44
type
type
Definition: HCALResponse.h:21
std
Definition: JetResolutionObject.h:76
AnnealingSchedule::weight
virtual double weight(double chi2) const =0
AnnealingSchedule::anneal
virtual void anneal()=0
AnnealingSchedule::cutoff
virtual double cutoff() const =0
ConfigurableAnnealing.h
ConfigurableAnnealing::clone
ConfigurableAnnealing * clone() const override
Definition: ConfigurableAnnealing.cc:34
beamvalidation.exit
def exit(msg="")
Definition: beamvalidation.py:53
AnnealingSchedule::resetAnnealing
virtual void resetAnnealing()=0
ConfigurableAnnealing::debug
void debug() const override
Definition: ConfigurableAnnealing.cc:38