PDFxTMDLib  1.0.0
Uncertainty.h
Go to the documentation of this file.
1 #pragma once
2 #include <cmath>
3 #include <vector>
4 namespace PDFxTMD
5 {
10 {
11  using ErrPairs = std::vector<std::pair<double, double>>;
12 
14  PDFUncertainty(double cent = 0, double eplus = 0, double eminus = 0, double esymm = 0,
15  double scalefactor = 1, double eplus_pdf = 0, double eminus_pdf = 0,
16  double esymm_pdf = 0, double eplus_par = 0, double eminus_par = 0,
17  double esymm_par = 0)
18  : central(cent), errplus(eplus), errminus(eminus), errsymm(esymm), scale(scalefactor),
19  errplus_pdf(eplus_pdf), errminus_pdf(eminus_pdf), errsymm_pdf(esymm_pdf),
20  errplus_par(eplus_par), errminus_par(eminus_par), errsymm_par(esymm_par)
21  {
22  }
23 
26 
32 };
34  PDFUncertainty temp(
35  std::numeric_limits<double>::quiet_NaN(), std::numeric_limits<double>::quiet_NaN(),
36  std::numeric_limits<double>::quiet_NaN(), std::numeric_limits<double>::quiet_NaN(),
37  std::numeric_limits<double>::quiet_NaN(), std::numeric_limits<double>::quiet_NaN(),
38  std::numeric_limits<double>::quiet_NaN(), std::numeric_limits<double>::quiet_NaN(),
39  std::numeric_limits<double>::quiet_NaN(), std::numeric_limits<double>::quiet_NaN(),
40  std::numeric_limits<double>::quiet_NaN());
41  temp.errparts = {};
42  return temp;
43 }();
44 } // namespace PDFxTMD
Definition: AllFlavorsShape.h:14
const PDFUncertainty NULL_PDF_UNCERTAINTY
Definition: Uncertainty.h:33
Structure for storage of uncertainty info calculated over a PDF error set.
Definition: Uncertainty.h:10
double errsymm_pdf
Definition: Uncertainty.h:28
PDFUncertainty(double cent=0, double eplus=0, double eminus=0, double esymm=0, double scalefactor=1, double eplus_pdf=0, double eminus_pdf=0, double esymm_pdf=0, double eplus_par=0, double eminus_par=0, double esymm_par=0)
Constructor.
Definition: Uncertainty.h:14
double errminus_par
Definition: Uncertainty.h:29
double errplus
Definition: Uncertainty.h:25
double central
Variables for the central value, +ve, -ve & symmetrised errors, and a CL scalefactor.
Definition: Uncertainty.h:25
double errplus_par
Definition: Uncertainty.h:29
double errsymm
Definition: Uncertainty.h:25
double errminus
Definition: Uncertainty.h:25
std::vector< std::pair< double, double > > ErrPairs
Definition: Uncertainty.h:11
double errminus_pdf
Definition: Uncertainty.h:28
double errplus_pdf
Variables for separate PDF and parameter variation errors with combined sets.
Definition: Uncertainty.h:28
ErrPairs errparts
Full error-breakdown of all quadrature uncertainty components, as (+,-) pairs.
Definition: Uncertainty.h:31
double scale
Definition: Uncertainty.h:25
double errsymm_par
Definition: Uncertainty.h:29