|
| BinnedEstimate (const EstimateT &)=default |
|
| BinnedEstimate (EstimateT &&)=default |
|
BinnedEstimate & | operator= (const EstimateT &)=default |
|
BinnedEstimate & | operator= (EstimateT &&)=default |
|
| BinnedEstimate (const BaseT &other) |
| Copy constructor (needed for clone functions).
|
|
| BinnedEstimate (const EstimateT &other, const std::string &path) |
|
| BinnedEstimate (BaseT &&other) |
| Move constructor.
|
|
| BinnedEstimate (EstimateT &&other, const std::string &path) |
|
| BinnedEstimate (std::vector< AxisT > &&edges, const std::string &path="", const std::string &title="") |
|
| BinnedEstimate (const std::vector< AxisT > &edges, const std::string &path="", const std::string &title="") |
|
template<typename EdgeT = double, typename = enable_if_all_CAxisT<EdgeT, AxisT>> |
| BinnedEstimate (size_t nbins, double lower, double upper, const std::string &path="", const std::string &title="") |
| Constructor with auto-setup of evenly spaced axes.
|
|
EstimateT | clone () const noexcept |
| Make a copy on the stack.
|
|
EstimateT * | newclone () const noexcept |
| Make a copy on the heap.
|
|
size_t | indexAt (const AxisT xCoord) const noexcept |
| Find bin index for given coordinates.
|
|
void | maskBinAt (const AxisT xCoord, const bool status=true) noexcept |
| Mask/Unmask bin at given set of coordinates.
|
|
| EstimateStorage (const std::string &path="", const std::string &title="") |
| Nullary constructor for unique pointers etc.
|
|
| EstimateStorage (std::vector< AxisT > &&... binsEdges, const std::string &path="", const std::string &title="") |
| Constructor giving explicit bin edges as rvalue reference.
|
|
| EstimateStorage (const std::vector< AxisT > &... binsEdges, const std::string &path="", const std::string &title="") |
| Constructor giving explicit bin edges as lvalue reference.
|
|
| EstimateStorage (std::initializer_list< AxisT > &&... binsEdges, const std::string &path="", const std::string &title="") |
| Constructor giving explicit bin edges as initializer list.
|
|
template<typename EdgeT = double, typename = enable_if_all_CAxisT<EdgeT, AxisT...>> |
| EstimateStorage (const std::vector< size_t > &nBins, const std::vector< std::pair< EdgeT, EdgeT > > &limitsLowUp, const std::string &path="", const std::string &title="") |
| Constructor giving range and number of bins.
|
|
| EstimateStorage (const BinningT &binning, const std::string &path="", const std::string &title="") |
| Constructor given a binning type.
|
|
| EstimateStorage (BinningT &&binning, const std::string &path="", const std::string &title="") |
| Constructor given an rvalue BinningT.
|
|
template<typename EdgeT = double, typename = enable_if_all_CAxisT<EdgeT, AxisT...>> |
| EstimateStorage (const ScatterND< sizeof...(AxisT)+1 > &s, const std::string &path="", const std::string &title="") |
| Constructor given a scatter.
|
|
| EstimateStorage (const EstimateStorage &other, const std::string &path="") |
| Copy constructor.
|
|
| EstimateStorage (EstimateStorage &&other, const std::string &path="") |
| Move constructor.
|
|
EstimateStorage | clone () const noexcept |
| Make a copy on the stack.
|
|
EstimateStorage * | newclone () const noexcept |
| Make a copy on the heap.
|
|
void | scale (const double scalefactor) noexcept |
| Rescale as if all fill weights had been different by factor scalefactor.
|
|
template<size_t axisN> |
void | rebinBy (unsigned int n, size_t begin=1, size_t end=UINT_MAX) |
| Merge every group of n bins, from start to end inclusive.
|
|
template<size_t axisN> |
void | rebin (unsigned int n, size_t begin=1, size_t end=UINT_MAX) |
| Overloaded alias for rebinBy.
|
|
template<size_t axisN> |
void | rebinTo (const std::vector< typename BinningT::template getAxisT< axisN >::EdgeT > &newedges) |
| Rebin to the given list of bin edges.
|
|
template<size_t axisN> |
void | rebin (const std::vector< typename BinningT::template getAxisT< axisN >::EdgeT > &newedges) |
| Overloaded alias for rebinTo.
|
|
void | reset () noexcept |
| Reset the EstimateStorage.
|
|
EstimateStorage & | operator= (const EstimateStorage &est) noexcept |
| Copy assignment.
|
|
EstimateStorage & | operator= (EstimateStorage &&est) noexcept |
| Move assignment.
|
|
EstimateStorage & | add (const EstimateStorage &est, const std::string &pat_uncorr="^stat|^uncor") |
| Add two EstimateStorages.
|
|
EstimateStorage & | operator+= (const EstimateStorage &est) |
|
EstimateStorage & | add (EstimateStorage &&est, const std::string &pat_uncorr="^stat|^uncor") |
| Add two (rvalue) EstimateStorages.
|
|
EstimateStorage & | operator+= (EstimateStorage &&est) |
|
EstimateStorage & | subtract (const EstimateStorage &est, const std::string &pat_uncorr="^stat|^uncor") |
| Subtract one EstimateStorages from another one.
|
|
EstimateStorage & | operator-= (const EstimateStorage &est) |
|
EstimateStorage & | subtract (EstimateStorage &&est, const std::string &pat_uncorr="^stat|^uncor") |
| Subtract one (rvalue) EstimateStorages from another one.
|
|
EstimateStorage & | operator-= (EstimateStorage &&est) |
|
size_t | dim () const noexcept |
| Total dimension of the object (number of axes + estimate)
|
|
template<size_t I, typename E = typename BinningT::template getEdgeT<I>> |
std::vector< E > | edges (const bool includeOverflows=false) const noexcept |
| Templated version to get edges of axis N by value. +-inf edges are included.
|
|
template<size_t I, typename E = typename BinningT::template getEdgeT<I>> |
std::enable_if_t< std::is_floating_point< E >::value, std::vector< E > > | widths (const bool includeOverflows=false) const noexcept |
| Templated version to get bin widths of axis N by value.
|
|
template<size_t I, typename E = typename BinningT::template getEdgeT<I>> |
std::enable_if_t< std::is_floating_point< E >::value, E > | min () const noexcept |
| Get the lowest non-overflow edge of the axis.
|
|
template<size_t I, typename E = typename BinningT::template getEdgeT<I>> |
std::enable_if_t< std::is_floating_point< E >::value, E > | max () const noexcept |
| Get the highest non-overflow edge of the axis.
|
|
std::vector< double > | vals (const bool includeOverflows=false, const bool includeMaskedBins=false) const |
| Get list of central values.
|
|
std::vector< std::string > | sources () const |
| Get list of error sources.
|
|
double | areaUnderCurve (const bool includeBinVol=true, const bool includeOverflows=false, const bool includeMaskedBins=false) const |
| Calculate the volume underneath the EstimateStorage.
|
|
double | auc (const bool includeBinVol=true, const bool includeOverflows=false, const bool includeMaskedBins=false) const |
| Convenient alias for areaUnderCurve()
|
|
std::vector< std::vector< double > > | covarianceMatrix (const bool ignoreOffDiagonalTerms=false, const bool includeOverflows=false, const bool includeMaskedBins=false, const std::string &pat_uncorr="^stat|^uncor") const |
| Construct a covariance matrix from the error breakdown.
|
|
auto | mkScatter (const std::string &path="", const std::string &pat_match="", const bool includeOverflows=false, const bool includeMaskedBins=false) const |
| Produce a ScatterND from a EstimateStorage.
|
|
template<size_t axisN, typename = std::enable_if_t< (axisN < sizeof...(AxisT) && sizeof...(AxisT)>=2) >> |
auto | mkEstimates (const std::string &path="", const bool includeOverflows=false) const |
| Split into vector of BinnedEstimates along axisN.
|
|
AnalysisObject * | mkInert (const std::string &path="", const std::string &source="") const noexcept |
| Method returns clone of the estimate with streamlined error source.
|
|
size_t | lengthContent (bool fixed_length=false) const noexcept |
| Length of serialized content vector for MPI reduce operations.
|
|
std::vector< double > | serializeContent (bool fixed_length=false) const noexcept |
| Content serialisation for MPI reduce operations.
|
|
void | deserializeContent (const std::vector< double > &data) |
| Content deserialisation for MPI reduce operations.
|
|
| BinnedStorage () |
| Nullary constructor for unique pointers etc.
|
|
| BinnedStorage (const BinningT &binning) |
| Constructs BinnedStorage from Binning.
|
|
| BinnedStorage (BinningT &&binning) |
| Constructs BinnedStorage from Binning. Rvalue.
|
|
| BinnedStorage (const std::vector< AxisT > &... edges) |
| Constructs binning from an adapter and vectors of axes' edges.
|
|
| BinnedStorage (std::vector< AxisT > &&... edges) |
| Constructs binning from an adapter and Rvalue vectors of axes' edges.
|
|
| BinnedStorage (std::initializer_list< AxisT > &&... edges) |
| Constructs binning from an adapter and Rvalue initializer lists of axes' edges.
|
|
| BinnedStorage (const Axis< AxisT > &... axes) |
| Constructs binning from an adapter and a sequence of axes.
|
|
| BinnedStorage (Axis< AxisT > &&... axes) |
| Constructs binning from an adapter and a sequence of Rvalue axes.
|
|
| BinnedStorage (const BinnedStorage &other) |
| Copy constructor.
|
|
| BinnedStorage (BinnedStorage &&other) |
| Move constructor.
|
|
size_t | dim () const noexcept |
| Total dimension of the object ( = number of axes + content)
|
|
BinT & | bin (size_t idx) noexcept |
| Returns reference to the bin at idx.
|
|
const BinT & | bin (size_t idx) const noexcept |
| Returns Bin at idx.
|
|
BinT & | bin (const std::array< size_t, sizeof...(AxisT)> &idxLocal) noexcept |
| Bin access using local bin indices.
|
|
const BinT & | bin (const std::array< size_t, sizeof...(AxisT)> &idxLocal) const noexcept |
| Bin access using local bin indices.
|
|
BinT & | binAt (typename BinningT::EdgeTypesTuple &&coords) noexcept |
| Returns reference to the bin at coordinates.
|
|
const BinT & | binAt (typename BinningT::EdgeTypesTuple &&coords) const noexcept |
| Returns reference to the bin at coordinates (const version).
|
|
void | set (typename BinningT::EdgeTypesTuple &&coords, Estimate &&content) noexcept |
| Sets the bin corresponding to coords with an rvalue content.
|
|
void | set (typename BinningT::EdgeTypesTuple &&coords, const Estimate &content) noexcept |
| Sets the bin corresponding to coords with content.
|
|
void | set (const size_t binIdx, Estimate &&content) noexcept |
| Sets the bin corresponding to binIndex with an rvalue content.
|
|
void | set (const size_t binIdx, const Estimate &content) noexcept |
| Sets the bin corresponding to binIndex with content.
|
|
std::vector< size_t > | calcIndicesToSkip (const bool includeOverflows, const bool includeMaskedBins) const noexcept |
| Calculates indices of bins which are marked or located in the overflow.
|
|
BinsVecWrapper< BinsVecT > | bins (const bool includeOverflows=false, const bool includeMaskedBins=false) noexcept |
| Returns bins vector wrapper, which skips masked elements when iterated over.
|
|
const BinsVecWrapper< const BinsVecT > | bins (const bool includeOverflows=false, const bool includeMaskedBins=false) const noexcept |
| Const version.
|
|
const BinningT & | binning () const noexcept |
| Returns dimension underlying binning object reference.
|
|
size_t | binDim () const noexcept |
| Returns dimension of binning.
|
|
size_t | numBins (const bool includeOverflows=false, const bool includeMaskedBins=false) const noexcept |
| Number of bins in the BinnedStorage.
|
|
size_t | numBinsAt (const size_t axisN, const bool includeOverflows=false) const noexcept |
| Number of bins in the BinnedStorage.
|
|
void | reset () noexcept |
| Reset the BinnedStorage.
|
|
void | clearBins () noexcept |
| Deletes all bins and creates empty new ones.
|
|
void | maskBins (const std::vector< size_t > &indicesToMask, const bool status=true) noexcept |
| Mask a range of bins.
|
|
void | maskBin (const size_t indexToMask, const bool status=true) noexcept |
| Mask a bin at a given index.
|
|
void | maskSlice (const size_t dim, const size_t idx, const bool status=true) |
| Mask a slice of the binning at local bin index idx along axis dimesnion dim.
|
|
void | maskBinAt (typename BinningT::EdgeTypesTuple &&coords, const bool status=true) noexcept |
| Mask a bin at a given set of corrdinates.
|
|
bool | isMasked (const size_t binIndex) const noexcept |
|
std::vector< size_t > | maskedBins () const noexcept |
|
bool | isVisible (const size_t binIndex) const noexcept |
|
auto | mergeBins (std::decay_t< decltype(AxisNs, std::declval< std::pair< size_t, size_t > >())>... mergeRanges) noexcept -> std::enable_if_t< MetaUtils::is_detected_v< MetaUtils::operatorTraits::addition_assignment_t, Estimate >, RetT > |
| Merge bins from A to B at G axis.
|
|
auto | mkBinnedSlices (Func &&how2add, const bool includeOverflows=false) const |
| Split this BinnedStorage into a vector of BinnedStorages along axisN.
|
|
BinnedStorage & | operator= (const BinnedStorage &other) noexcept |
| Copy assignment.
|
|
BinnedStorage & | operator= (BinnedStorage &&other) noexcept |
| Move assignment.
|
|
bool | operator== (const BinnedStorage &other) const noexcept |
| Compares BinnedStorages for equality, e.g. dimensions of underlying binnings and all axes edges are equal.
|
|
bool | operator!= (const BinnedStorage &other) const noexcept |
| Compares BinnedStorages for inequality.
|
|
| AnalysisObject () |
| Default constructor.
|
|
| AnalysisObject (const std::string &type, const std::string &path, const std::string &title="") |
| Constructor giving a type, a path and an optional title.
|
|
| AnalysisObject (const std::string &type, const std::string &path, const AnalysisObject &ao, const std::string &title="") |
| Constructor giving a type, a path, another AO to copy annotation from, and an optional title.
|
|
virtual | ~AnalysisObject () |
| Default destructor.
|
|
virtual AnalysisObject & | operator= (const AnalysisObject &ao) noexcept |
| Default copy assignment operator.
|
|
std::vector< std::string > | annotations () const |
|
bool | hasAnnotation (const std::string &name) const |
| Check if an annotation is defined.
|
|
const std::string & | annotation (const std::string &name) const |
| Get an annotation by name (as a string)
|
|
const std::string & | annotation (const std::string &name, const std::string &defaultreturn) const |
| Get an annotation by name (as a string) with a default in case the annotation is not found.
|
|
template<typename T > |
const T | annotation (const std::string &name) const |
| Get an annotation by name (copied to another type)
|
|
template<typename T > |
const T | annotation (const std::string &name, const T &defaultreturn) const |
| Get an annotation by name (copied to another type) with a default in case the annotation is not found.
|
|
template<typename T > |
void | setAnnotation (const std::string &name, const T &value) |
| Add or set an annotation by name (templated for remaining types)
|
|
void | setAnnotations (const Annotations &anns) |
| Set all annotations at once.
|
|
template<typename T > |
void | addAnnotation (const std::string &name, const T &value) |
| Add or set an annotation by name.
|
|
void | rmAnnotation (const std::string &name) |
| Delete an annotation by name.
|
|
void | clearAnnotations () |
| Delete an annotation by name.
|
|
const std::string | title () const |
| Get the AO title.
|
|
void | setTitle (const std::string &title) |
| Set the AO title.
|
|
const std::string | path () const |
| Get the AO path.
|
|
void | setPath (const std::string &path) |
|
const std::string | name () const |
|
virtual std::string | type () const |
| Get name of the analysis object type.
|
|
size_t | lengthMeta (const bool skipPath=true, const bool skipTitle=true) const noexcept |
| Length of serialized meta-data vector for MPI reduce operations.
|
|
std::vector< std::string > | serializeMeta (const bool skipPath=true, const bool skipTitle=true) const noexcept |
| Mate-data serialisation for MPI reduce operations.
|
|
virtual void | deserializeMeta (const std::vector< std::string > &data, const bool resetPath=false, const bool resetTitle=false) |
| Mate-data deserialisation for MPI reduce operations.
|
|
size_t | numBinsX (const bool includeOverflows=false) const |
| Number of bins along the X axis.
|
|
enable_if_CAxisT< T > | xMin () const |
| Low edge of first histo's axis.
|
|
enable_if_CAxisT< T > | xMax () const |
| High edge of first histo's axis.
|
|
std::vector< AxisT > | xEdges (const bool includeOverflows=false) const |
| All bin edges on X axis. +-inf edges are included.
|
|
std::enable_if_t< std::is_floating_point< T >::value, std::vector< T > > | xWidths (const bool includeOverflows=false) const |
| All widths on X axis.
|
|
void | rebinXBy (unsigned int n, size_t begin=1, size_t end=UINT_MAX) |
|
void | rebinXTo (const std::vector< double > &newedges) |
|
void | rebinX (unsigned int n, size_t begin=1, size_t end=UINT_MAX) |
|
void | rebinX (const std::vector< double > &newedges) |
|