#include <ThinSliceSample.h>
Public Member Functions | |
ThinSliceSample (std::string name, int flux_type, const std::vector< fhicl::ParameterSet > &selections, const std::vector< double > &incident_bins, const std::vector< double > &true_incident_bins, size_t beam_energy_bin, bool is_signal=false, std::pair< double, double > range={0., 0.}) | |
~ThinSliceSample () | |
void | SetFactor (double f) |
const std::map< int, TH1 * > & | GetSelectionHists () const |
const std::map< int, std::vector< TH1 * > > & | GetShifts (std::string syst_name) const |
const std::map< int, std::vector< TSpline3 * > > & | GetSplines (std::string syst_name) const |
const std::map< std::string, std::map< int, std::vector< TSpline3 * > > > & | GetAllSplines () const |
void | SetSystematicSplines (const std::map< std::string, std::map< int, std::vector< TSpline3 * >>> &input) |
double | GetSplineWeight (std::string syst_name, double par_val, int selection_ID, double val) const |
void | AddSystematicShift (TH1 *hist, std::string syst_name, int selection_ID) |
void | SaveSystematics (std::string syst_name, TDirectory *dir) |
const std::map< int, TH1 * > & | GetRebinnedSelectionHists () const |
TH1 * | GetSelectionHist (int id) |
TH1D & | GetTrueIncidentHist () |
TH1 * | GetRebinnedSelectionHist (int id) |
const std::string & | GetName () const |
const int & | GetFluxType () const |
const double & | GetNominalFlux () const |
const double & | GetVariedFlux () const |
void | AddFlux (double val=1.) |
void | AddVariedFlux (double val=1.) |
void | FillSystematicShift (std::string syst_name, int selection_ID, const std::vector< double > &vals) |
void | FillSystematicShift (std::string syst_name, int selection_ID, const std::vector< double > &vals, const std::vector< double > &weights) |
void | SetSystematicVals (std::string syst_name, std::vector< double > &vals) |
void | MakeSystematicSplines (std::string syst_name) |
void | AddIncidentEnergies (const std::vector< double > &vals, double weight=1.) |
void | AddESliceEnergies (const std::pair< double, double > &vals, double weight=1.) |
void | FillTrueIncidentHist (const std::vector< double > &vals, double weight=1.) |
void | FillSelectionHist (int id, double val, double weight=1.) |
template<size_t N> | |
void | FillSelectionHist (int id, const double(&vals)[N], double weight=1.) |
void | FillHistFromIncidentEnergies (TH1D &hist) |
void | FillESliceHist (TH1D &hist) |
void | ScaleHists (double val) |
void | ScaleIncidentEnergies (double val) |
void | ScaleESliceEnergies (double val) |
void | Reset () |
void | ScaleVariedFlux (double val) |
void | ScaleToDataMC () |
void | SetDataMCScale (double val) |
void | SetFactorAndScale (double val) |
void | ExtraFactor (double val) |
double | GetFactor () |
void | ResetFactor () |
void | SetFactorToBestFit () |
double | GetBestFitFactor () |
void | SetBestFit () |
bool | CheckIsSignal () |
bool | CheckInSignalRange (double val) |
double | RangeLowEnd () |
double | RangeHighEnd () |
const std::pair< double, double > & | GetRange () const |
void | RefillRebinnedHists () |
void | MakeRebinnedHists () |
Private Member Functions | |
void | Rebin1D (TH1 *sel_hist, TH1 *rebinned) |
void | Rebin2D (TH1 *sel_hist, TH1 *rebinned) |
void | Rebin3D (TH1 *sel_hist, TH1 *rebinned) |
Private Attributes | |
double | fFactor = 1. |
double | fBestFitFactor = 1. |
bool | fBestFitIsSet = false |
std::string | fSampleName |
int | fFluxType |
double | fNominalFlux = 0. |
double | fVariedFlux = 0. |
double | fDataMCScale = 1. |
bool | fIsSignal |
std::pair< double, double > | fRange |
std::map< int, TH1 * > | fSelectionHists |
TH1D | fTrueIncidentHist |
std::map< int, TH1 * > | fSelectionHistsRebinned |
bool | fMadeRebinned = false |
std::map< std::string, std::map< int, std::vector< TSpline3 * > > > | fSystematicSplines |
std::map< std::string, std::map< int, std::vector< TH1 * > > > | fSystematicShifts |
std::map< std::string, std::vector< double > > | fSystematicVals |
std::vector< std::pair< double, double > > | fIncidentEnergies |
std::vector< std::pair< std::pair< double, double >, double > > | fESliceEnergies |
Definition at line 23 of file ThinSliceSample.h.
protoana::ThinSliceSample::ThinSliceSample | ( | std::string | name, |
int | flux_type, | ||
const std::vector< fhicl::ParameterSet > & | selections, | ||
const std::vector< double > & | incident_bins, | ||
const std::vector< double > & | true_incident_bins, | ||
size_t | beam_energy_bin, | ||
bool | is_signal = false , |
||
std::pair< double, double > | range = {0., 0.} |
||
) |
Definition at line 10 of file ThinSliceSample.cxx.
|
inline |
Definition at line 32 of file ThinSliceSample.h.
|
inline |
Definition at line 213 of file ThinSliceSample.h.
|
inline |
Definition at line 131 of file ThinSliceSample.h.
|
inline |
Definition at line 208 of file ThinSliceSample.h.
|
inline |
Definition at line 65 of file ThinSliceSample.h.
|
inline |
Definition at line 136 of file ThinSliceSample.h.
|
inline |
Definition at line 363 of file ThinSliceSample.h.
|
inline |
Definition at line 362 of file ThinSliceSample.h.
|
inline |
Definition at line 331 of file ThinSliceSample.h.
|
inline |
Definition at line 257 of file ThinSliceSample.h.
|
inline |
Definition at line 250 of file ThinSliceSample.h.
|
inline |
Definition at line 223 of file ThinSliceSample.h.
|
inline |
Definition at line 229 of file ThinSliceSample.h.
|
inline |
Definition at line 140 of file ThinSliceSample.h.
|
inline |
Definition at line 154 of file ThinSliceSample.h.
|
inline |
Definition at line 217 of file ThinSliceSample.h.
|
inline |
Definition at line 51 of file ThinSliceSample.h.
|
inline |
Definition at line 349 of file ThinSliceSample.h.
|
inline |
Definition at line 335 of file ThinSliceSample.h.
|
inline |
Definition at line 119 of file ThinSliceSample.h.
|
inline |
Definition at line 115 of file ThinSliceSample.h.
|
inline |
Definition at line 123 of file ThinSliceSample.h.
|
inline |
Definition at line 368 of file ThinSliceSample.h.
|
inline |
Definition at line 111 of file ThinSliceSample.h.
|
inline |
Definition at line 89 of file ThinSliceSample.h.
|
inline |
Definition at line 93 of file ThinSliceSample.h.
|
inline |
Definition at line 36 of file ThinSliceSample.h.
|
inline |
Definition at line 41 of file ThinSliceSample.h.
|
inline |
Definition at line 46 of file ThinSliceSample.h.
|
inline |
Definition at line 59 of file ThinSliceSample.h.
|
inline |
Definition at line 102 of file ThinSliceSample.h.
|
inline |
Definition at line 127 of file ThinSliceSample.h.
void protoana::ThinSliceSample::MakeRebinnedHists | ( | ) |
Definition at line 89 of file ThinSliceSample.cxx.
|
inline |
Definition at line 173 of file ThinSliceSample.h.
|
inline |
Definition at line 366 of file ThinSliceSample.h.
|
inline |
Definition at line 365 of file ThinSliceSample.h.
|
private |
Definition at line 142 of file ThinSliceSample.cxx.
|
private |
Definition at line 155 of file ThinSliceSample.cxx.
|
private |
Definition at line 176 of file ThinSliceSample.cxx.
void protoana::ThinSliceSample::RefillRebinnedHists | ( | ) |
Definition at line 206 of file ThinSliceSample.cxx.
|
inline |
Definition at line 292 of file ThinSliceSample.h.
|
inline |
Definition at line 339 of file ThinSliceSample.h.
|
inline |
Definition at line 70 of file ThinSliceSample.h.
|
inline |
Definition at line 285 of file ThinSliceSample.h.
|
inline |
Definition at line 269 of file ThinSliceSample.h.
|
inline |
Definition at line 278 of file ThinSliceSample.h.
|
inline |
Definition at line 309 of file ThinSliceSample.h.
|
inline |
Definition at line 305 of file ThinSliceSample.h.
|
inline |
Definition at line 353 of file ThinSliceSample.h.
|
inline |
Definition at line 316 of file ThinSliceSample.h.
|
inline |
Definition at line 34 of file ThinSliceSample.h.
|
inline |
Definition at line 324 of file ThinSliceSample.h.
|
inline |
Definition at line 345 of file ThinSliceSample.h.
|
inline |
Definition at line 55 of file ThinSliceSample.h.
|
inline |
Definition at line 169 of file ThinSliceSample.h.
|
private |
Definition at line 374 of file ThinSliceSample.h.
|
private |
Definition at line 375 of file ThinSliceSample.h.
|
private |
Definition at line 380 of file ThinSliceSample.h.
|
private |
Definition at line 408 of file ThinSliceSample.h.
|
private |
Definition at line 374 of file ThinSliceSample.h.
|
private |
Definition at line 377 of file ThinSliceSample.h.
|
private |
Definition at line 407 of file ThinSliceSample.h.
|
private |
Definition at line 381 of file ThinSliceSample.h.
|
private |
Definition at line 393 of file ThinSliceSample.h.
|
private |
Definition at line 378 of file ThinSliceSample.h.
|
private |
Definition at line 382 of file ThinSliceSample.h.
|
private |
Definition at line 376 of file ThinSliceSample.h.
|
private |
Definition at line 387 of file ThinSliceSample.h.
|
private |
Definition at line 390 of file ThinSliceSample.h.
|
private |
Definition at line 403 of file ThinSliceSample.h.
|
private |
Definition at line 401 of file ThinSliceSample.h.
|
private |
Definition at line 404 of file ThinSliceSample.h.
|
private |
Definition at line 389 of file ThinSliceSample.h.
|
private |
Definition at line 379 of file ThinSliceSample.h.