10 #include "TAttMarker.h"
47 const IFitVar* xvar,
int nbinsx,
double xmin,
double xmax,
48 const IFitVar* yvar,
int nbinsy,
double ymin,
double ymax,
49 const std::vector<const IFitVar*>& profVars = {},
50 const std::vector<const ISyst*>& profSysts = {},
51 const std::map<const IFitVar*, std::vector<double>>& seedPts = {},
52 const std::vector<SystShifts>& systSeedPts = {},
53 bool parallel =
false,
66 Surface(
const IExperiment* expt,
70 const std::vector<const IFitVar*>& profVars = {},
71 const std::vector<const ISyst*>& profSysts = {},
72 const std::map<const IFitVar*, std::vector<double>>& seedPts = {},
73 const std::vector<SystShifts>& systSeedPts = {},
74 bool parallel =
false,
80 void DrawBestFit(Color_t color, Int_t marker=kFullCircle)
const;
92 TH2F*
ToTH2(
double minchi = -1)
const;
101 std::vector<TGraph*>
GetGraphs(TH2* fc,
double minchi = -1);
104 static std::unique_ptr<Surface>
LoadFrom(TDirectory*
dir);
105 static std::unique_ptr<Surface>
LoadFromMulti(
const std::vector<TFile*>& files,
const std::string& label);
106 static std::unique_ptr<Surface>
LoadFromMulti(
const std::string& wildcard,
const std::string& label);
112 void CheckMask(
const std::string& func)
const;
118 const std::vector<const IFitVar*>& profVars,
119 const std::vector<const ISyst*>& profSysts,
120 const std::map<
const IFitVar*, std::vector<double>>& seedPts,
121 const std::vector<SystShifts>& systSeedPts);
127 const std::vector<const IFitVar*>& profVars,
128 const std::vector<const ISyst*>& profSysts,
129 const std::map<
const IFitVar*, std::vector<double>>& seedPts,
130 const std::vector<SystShifts>& systSeedPts);
TH2 * Gaussian2Sigma1D(const Surface &s)
Up-value surface for 2 sigma confidence in 1D in gaussian approximation.
TH2 * Gaussian2Sigma2D(const Surface &s)
Up-value surface for 2 sigma confidence in 2D in gaussian approximation.
void DrawBestFit(Color_t color, Int_t marker=kFullCircle) const
Draw the best fit point.
process_name opflash particleana ie x
Log-likelihood scan across two parameters.
TH2 * Gaussian90Percent1D(const Surface &s)
Up-value surface for 90% confidence in 1D in gaussian approximation.
void SaveTo(TDirectory *dir) const
std::vector< int > fBinMask
void FillSurfacePoint(const IExperiment *expt, osc::IOscCalcAdjustable *calc, const FitAxis &xax, double x, const FitAxis &yax, double y, const std::vector< const IFitVar * > &profVars, const std::vector< const ISyst * > &profSysts, const std::map< const IFitVar *, std::vector< double >> &seedPts, const std::vector< SystShifts > &systSeedPts)
TH2 * Gaussian95Percent2D(const Surface &s)
Up-value surface for 95% confidence in 2D in gaussian approximation.
void DrawContour(TH2 *fc, Style_t style, Color_t color, double minchi=-1)
TH2 * Gaussian68Percent1D(const Surface &s)
Up-value surface for 68% confidence in 1D in gaussian approximation.
TH2 * Gaussian68Percent2D(const Surface &s)
Up-value surface for 68% confidence in 2D in gaussian approximation.
process_name opflashCryoW ana
std::vector< TH2 * > GetProfiledHists()
Maps of the values taken on by the profiled parameters.
TH2 * Gaussian90Percent2D(const Surface &s)
Up-value surface for 90% confidence in 2D in gaussian approximation.
void FillSurface(const std::string &progTitle, const IExperiment *expt, osc::IOscCalcAdjustable *calc, const FitAxis &xax, const FitAxis &yax, const std::vector< const IFitVar * > &profVars, const std::vector< const ISyst * > &profSysts, const std::map< const IFitVar *, std::vector< double >> &seedPts, const std::vector< SystShifts > &systSeedPts)
TH2 * Gaussian95Percent1D(const Surface &s)
Up-value surface for 95% confidence in 1D in gaussian approximation.
TH2 * Gaussian3Sigma1D(const Surface &s)
Up-value surface for 3 sigma confidence in 1D in gaussian approximation.
TH2 * Gaussian5Sigma2D(const Surface &s)
Up-value surface for 5 sigma confidence in 2D in gaussian approximation.
process_name pandoraGausCryo1 vertexChargeCryo1 vertexStubCryo1 xmin
static std::unique_ptr< Surface > LoadFromMulti(const std::vector< TFile * > &files, const std::string &label)
TH2 * Gaussian99Percent2D(const Surface &s)
Up-value surface for 99% confidence in 2D in gaussian approximation.
process_name opflash particleana ie ie y
std::vector< TH2 * > GetMarginalizedHists()
Deprecated. Retained for backwards compatibility.
static std::unique_ptr< Surface > LoadFrom(TDirectory *dir)
TH2 * Gaussian3Sigma2D(const Surface &s)
Up-value surface for 3 sigma confidence in 2D in gaussian approximation.
TH2 * Gaussian99Percent1D1Sided(const Surface &s)
Up-value surface for 99% confidence in 1D in 1-sided gaussian approxiamtion.
TH2 * Gaussian90Percent1D1Sided(const Surface &s)
Up-value surface for 90% confidence in 1D in 1-sided gaussian approximation.
TH2 * Gaussian95Percent1D1Sided(const Surface &s)
Up-value surface for 95% confidence in 1D in 1-sided gaussian approximation.
void CheckMask(const std::string &func) const
std::vector< double > fSeedValues
then echo File list $list not found else cat $list while read file do echo $file sed s
TH2 * Gaussian3Sigma1D1Sided(const Surface &s)
Up-value surface for 3 sigma confidence in 1D in 1-sided gaussian approximation.
std::vector< TH2 * > fProfHists
Base class defining interface for experiments.
TH2 * Gaussian5Sigma1D1Sided(const Surface &s)
Up-value surface for 5 sigma confidence in 1D in 1-sided gaussian approximation.
void Draw() const
Draw the surface itself.
Interface definition for fittable variables.
TH2F * ToTH2(double minchi=-1) const
TH2 * Gaussian99Percent1D(const Surface &s)
Up-value surface for 99% confidence in 1D in gaussian approximation.
std::vector< TGraph * > GetGraphs(TH2 *fc, double minchi=-1)
For expert use, custom painting of contours.
Collect information describing the axis of a fit variable.
void SetTitle(const char *str)