Bootstrapper.h
Go to the documentation of this file.
1 #ifndef _FdLightCollectionEfficiency_Bootstrapper_h_
2 #define _FdLightCollectionEfficiency_Bootstrapper_h_
3 
12 #include <utl/TabulatedFunctionErrors.h>
13 #include <list>
14 #include <vector>
15 
16 
17 namespace FdLightCollectionEfficiencyKG {
18 
29  class Bootstrapper {
30 
31  public:
32  Bootstrapper(const std::list<utl::TabulatedFunctionErrors>& data, const int verbosity = 0);
34 
36  bool MaxRelUncertaintyBelowThreshold(const double relUncertaintyThreshold, const double absValueThreshold = 0.);
37 
38  void SetVerbosity(const int verbosity) { fVerbosity = verbosity; }
39  int GetVerbosity() { return fVerbosity; }
40 
41  private:
42  void Bootstrap();
43 
48  };
49 
50  std::pair<double, double> MeanWithUncertainty(const std::vector<double>& samples,
51  const std::vector<double>& uncertainties,
53 
54  double Mean(const std::vector<double>& samples);
55  double WeightedMean(const std::vector<double>& samples, const std::vector<double>& uncertainties);
56  double Median(const std::vector<double>& sortedSamples);
57 
58  double SampleVariance(const std::vector<double>& samples, const double mean);
59  double WeightedSampleVariance(const std::vector<double>& samples, const std::vector<double>& uncertainties, const double mean);
60 
61  double MedianAbsoluteDeviation(const std::vector<double>& samples, const double mean);
62 
63  const std::list<utl::TabulatedFunctionErrors>& fData;
66 
68  };
69 
70  }
71 
72 #endif
73 
74 // Configure (x)emacs for this file ...
75 // Local Variables:
76 // mode: c++
77 // End:
double WeightedSampleVariance(const std::vector< double > &samples, const std::vector< double > &uncertainties, const double mean)
const utl::TabulatedFunctionErrors & GetMean()
Definition: Bootstrapper.h:35
Estimate the uncertainty of the light-collection efficiency with the bootstrap method.
Definition: Bootstrapper.h:29
void SetVerbosity(const int verbosity)
Definition: Bootstrapper.h:38
utl::TabulatedFunctionErrors fMean
Definition: Bootstrapper.h:67
double WeightedMean(const std::vector< double > &samples, const std::vector< double > &uncertainties)
Bootstrapper(const std::list< utl::TabulatedFunctionErrors > &data, const int verbosity=0)
Definition: Bootstrapper.cc:33
std::pair< double, double > MeanWithUncertainty(const std::vector< double > &samples, const std::vector< double > &uncertainties, const VarianceEstimator est=eSampleVariance)
double MedianAbsoluteDeviation(const std::vector< double > &samples, const double mean)
double Median(const std::vector< double > &sortedSamples)
uint16_t * data
Definition: dump1090.h:228
bool MaxRelUncertaintyBelowThreshold(const double relUncertaintyThreshold, const double absValueThreshold=0.)
int fVerbosity
global verbosity flag
Definition: Bootstrapper.h:65
double Mean(const std::vector< double > &samples)
double SampleVariance(const std::vector< double > &samples, const double mean)
const std::list< utl::TabulatedFunctionErrors > & fData
Definition: Bootstrapper.h:63

, generated on Tue Sep 26 2023.