CMS 3D CMS Logo

GeometricAnnealing.h
Go to the documentation of this file.
1 #ifndef GeometricAnnealing_H
2 #define GeometricAnnealing_H
3 
5 #include <vector>
6 
8 public:
16  GeometricAnnealing(const double cutoff = 3.0, const double T = 256.0, const double annealing_ratio = 0.25);
17 
18  void anneal() override; //< One annealing step. theT *= theRatio.
19  void resetAnnealing() override; //< theT = theT0.
20 
24  double phi(double chi2) const override;
25 
29  double weight(double chi2) const override;
30 
31  double cutoff() const override;
32  double currentTemp() const override;
33  double initialTemp() const override;
34 
38  bool isAnnealed() const override;
39 
40  void debug() const override;
41 
42  GeometricAnnealing* clone() const override { return new GeometricAnnealing(*this); };
43 
44 private:
45  double theT0;
46  double theT;
47  double theChi2cut;
48  double theRatio;
49 };
50 
51 #endif
GeometricAnnealing::initialTemp
double initialTemp() const override
Definition: GeometricAnnealing.cc:35
GeometricAnnealing::weight
double weight(double chi2) const override
Definition: GeometricAnnealing.cc:12
GeometricAnnealing::theT0
double theT0
Definition: GeometricAnnealing.h:42
hltPixelTracks_cff.chi2
chi2
Definition: hltPixelTracks_cff.py:25
GeometricAnnealing::GeometricAnnealing
GeometricAnnealing(const double cutoff=3.0, const double T=256.0, const double annealing_ratio=0.25)
Definition: GeometricAnnealing.cc:7
AnnealingSchedule.h
GeometricAnnealing::phi
double phi(double chi2) const override
Definition: GeometricAnnealing.cc:26
GeometricAnnealing::theChi2cut
double theChi2cut
Definition: GeometricAnnealing.h:47
GeometricAnnealing::cutoff
double cutoff() const override
Definition: GeometricAnnealing.cc:28
AnnealingSchedule
Definition: AnnealingSchedule.h:6
GeometricAnnealing::clone
GeometricAnnealing * clone() const override
Definition: GeometricAnnealing.h:42
GeometricAnnealing::debug
void debug() const override
Definition: GeometricAnnealing.cc:39
GeometricAnnealing
Definition: GeometricAnnealing.h:7
GeometricAnnealing::currentTemp
double currentTemp() const override
Definition: GeometricAnnealing.cc:33
GeometricAnnealing::anneal
void anneal() override
Definition: GeometricAnnealing.cc:10
T
long double T
Definition: Basic3DVectorLD.h:48
GeometricAnnealing::theRatio
double theRatio
Definition: GeometricAnnealing.h:48
GeometricAnnealing::isAnnealed
bool isAnnealed() const override
Definition: GeometricAnnealing.cc:37
GeometricAnnealing::theT
double theT
Definition: GeometricAnnealing.h:46
GeometricAnnealing::resetAnnealing
void resetAnnealing() override
Definition: GeometricAnnealing.cc:24