/usr/include/root/RooStats/HistFactory/EstimateSummary.h is in libroot-roofit-dev 5.34.00-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | // @(#)root/roostats:$Id: cranmer $
// Author: Kyle Cranmer, Akira Shibata
/*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOSTATS_ESTIMATESUMMARY_h
#define ROOSTATS_ESTIMATESUMMARY_h
#include "TH1.h"
#include <string>
#include <vector>
#include <map>
#include <iostream>
#include "TObject.h"
namespace RooStats{
namespace HistFactory{
struct EstimateSummary : public TObject {
enum ConstraintType{ Gaussian, Poisson };
struct NormFactor{
std::string name;
double val, high, low;
bool constant;
};
class ShapeSys{
public:
ShapeSys() : name(""), hist(NULL) {;}
std::string name;
TH1* hist;
ConstraintType constraint;
};
typedef std::vector<std::string> vecstring;
typedef std::vector<TH1*> vechist;
typedef std::pair<double, double> pairdouble;
typedef std::map<std::string, std::pair<double, double> > mappair;
// simple structure to hold necessary information about each channel
EstimateSummary();
virtual ~EstimateSummary();
void Print(const char *opt = 0) const ;
void AddSyst( const std::string & sname, TH1* low, TH1* high);
bool operator==(const EstimateSummary &other) const ;
bool CompareHisto( const TH1 * one, const TH1 * two) const ;
//data members .
std::string name;
std::string channel;
std::string normName;
TH1* nominal; // x pb per jet bin. all histograms need index of binning to be consistent
std::vector<std::string> systSourceForHist;
std::vector<TH1*> lowHists; // x pb per jet bin for - variations over list of systematics
std::vector<TH1*> highHists; // x pb per jet bin for + variations over list of systematics
std::map<std::string, std::pair<double, double> > overallSyst; // "acceptance"->(0.8,1.2)
std::pair<double, double> dummyForRoot;
std::vector<NormFactor> normFactor;
bool IncludeStatError; // Flag to implement Statistical errors for this sample
ConstraintType StatConstraintType; // The type of constraint binwise stat errors
Double_t RelErrorThreshold; // The minimum relative uncertainty for a bin to use stat errors
TH1* relStatError; // An (optional) externally provided shape for this error
// bool doShapeFactor; // A flag to include a ShapeFactor ParamatarizedHistogram
std::string shapeFactorName; //
std::vector<ShapeSys> shapeSysts; //
ClassDef(RooStats::HistFactory::EstimateSummary,1)
};
}
}
#endif
|