BAT  0.9.4
The Bayesian analysis toolkit
 All Classes Namespaces Functions Variables Enumerations
BCMTFAnalysisFacility.h
1 #ifndef __BCMTFANALYSISFACILITY__H
2 #define __BCMTFANALYSISFACILITY__H
3 
14 /*
15  * Copyright (C) 2007-2014, the BAT core developer team
16  * All rights reserved.
17  *
18  * For the licensing terms see doc/COPYING.
19  * For documentation see http://mpp.mpg.de/bat
20  */
21 
22 // ---------------------------------------------------------
23 #include <string>
24 #include <vector>
25 
26 #include <TH1D.h>
27 
28 #include "../../BAT/BCLog.h"
29 
30 class BCMTF;
31 class TTree;
32 class TRandom3;
33 
34 // ---------------------------------------------------------
36 {
37 
38 public:
39 
47 
51 
59  { return fMTF; };
60 
68  void SetBCMTF(BCMTF * mtf)
69  { fMTF = mtf; };
70 
74  void SetFlagMarginalize(bool flag)
75  { fFlagMarginalize = flag; };
76 
81  // misc
82 
87  { return fLogLevel; };
88 
93  { fLogLevel=level; };
94 
103  int PerformSingleChannelAnalyses(const char * dirname, const char * options = "");
104 
113  int PerformSingleSystematicAnalyses(const char * dirname, const char * options = "");
114 
124  int PerformCalibrationAnalysis(const char * dirname, const std::vector<double> & default_parameters, int index, const std::vector<double> & parametervalues, int nensembles = 1000);
125 
132  std::vector<TH1D> BuildEnsemble(const std::vector<double> & parameters, std::string options="");
133 
141  TTree * BuildEnsembles(const std::vector<double> & parameters, int nensembles, std::string options="");
142 
150  TTree * BuildEnsembles(TTree * tree, int nensembles, std::string options="");
151 
160  TTree * PerformEnsembleTest(const std::vector<double> & parameters, int nensembles, std::string options="");
161 
171  TTree * PerformEnsembleTest(TTree * tree, int nensembles, int start = 0, std::string options="");
172 
177  std::vector<TH1D> MatrixToHistograms(const std::vector< std::vector<double> > & matrix);
178 
179 private:
180 
183  BCMTF * fMTF;
184 
187  TRandom3 * fRandom;
188 
191  bool fFlagMarginalize;
192 
195  BCLog::LogLevel fLogLevel;
196 
197 };
198 // ---------------------------------------------------------
199 
200 #endif
201 
TTree * PerformEnsembleTest(const std::vector< double > &parameters, int nensembles, std::string options="")
void SetFlagMarginalize(bool flag)
int PerformCalibrationAnalysis(const char *dirname, const std::vector< double > &default_parameters, int index, const std::vector< double > &parametervalues, int nensembles=1000)
std::vector< TH1D > BuildEnsemble(const std::vector< double > &parameters, std::string options="")
TTree * BuildEnsembles(const std::vector< double > &parameters, int nensembles, std::string options="")
LogLevel
Definition: BCLog.h:45
int PerformSingleChannelAnalyses(const char *dirname, const char *options="")
BCLog::LogLevel GetLogLevel()
std::vector< TH1D > MatrixToHistograms(const std::vector< std::vector< double > > &matrix)
A class summarizing a set of predefined measurements.
void SetLogLevel(BCLog::LogLevel level)
int PerformSingleSystematicAnalyses(const char *dirname, const char *options="")
A class for fitting several templates to a data set.
Definition: BCMTF.h:38