PDFxTMDLib  1.0.0
PDFErrInfo.h
Go to the documentation of this file.
1 #pragma once
4 #include <string>
5 #include <utility>
6 #include <vector>
7 
8 namespace PDFxTMD
9 {
11 struct PDFErrInfo
12 {
13  using EnvPart = std::pair<std::string, size_t>;
14  using EnvParts = std::vector<EnvPart>;
15  using QuadParts = std::vector<EnvParts>;
16 
18  PDFErrInfo(QuadParts parts, double cl, const std::string &errtypestr = "")
19  : qparts(parts), conflevel(cl), errtype(errtypestr)
20  {
21  }
22 
24  PDFErrInfo() = default;
25 
28 
30  double conflevel;
31 
33  std::string errtype;
34 
36  std::string coreType() const
37  {
38  return qpartName(0);
39  }
40 
42  std::string qpartName(size_t iq) const;
44  std::vector<std::string> qpartNames() const;
45 
47  size_t nmemCore() const;
49  size_t nmemPar() const;
51  static PDFErrInfo CalculateErrorInfo(const YamlErrorInfo &yamlErrInfo);
52 };
53 } // namespace PDFxTMD
Definition: AllFlavorsShape.h:14
Structure encoding the structure of the PDF error-set (Taken from LHAPDF library code)
Definition: PDFErrInfo.h:12
size_t nmemCore() const
Number of core-set members.
double conflevel
Default confidence-level.
Definition: PDFErrInfo.h:30
std::pair< std::string, size_t > EnvPart
Definition: PDFErrInfo.h:13
std::vector< EnvParts > QuadParts
Definition: PDFErrInfo.h:15
size_t nmemPar() const
Number of par-set members.
std::string qpartName(size_t iq) const
Calculated name of a quadrature part.
std::vector< EnvPart > EnvParts
Definition: PDFErrInfo.h:14
std::vector< std::string > qpartNames() const
Calculated names of all quadrature parts.
PDFErrInfo(QuadParts parts, double cl, const std::string &errtypestr="")
Constructor.
Definition: PDFErrInfo.h:18
QuadParts qparts
Error-set quadrature parts.
Definition: PDFErrInfo.h:27
PDFErrInfo()=default
Default constructor (for STL, Cython, etc.)
std::string coreType() const
Calculated name of a quadrature part.
Definition: PDFErrInfo.h:36
std::string errtype
Error-type annotation.
Definition: PDFErrInfo.h:33
static PDFErrInfo CalculateErrorInfo(const YamlErrorInfo &yamlErrInfo)
Parse extended error type syntax.
Definition: YamlErrorInfo.h:9