All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EnsembleRatio.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 #include "TGraphAsymmErrors.h"
6 
7 #include <cassert>
8 
9 namespace ana
10 {
11  class EnsembleSpectrum;
12 
14  {
15  public:
16  EnsembleRatio(const EnsembleSpectrum& nom, const EnsembleSpectrum& denom);
17 
18  Ratio Nominal() const {return fNom;}
19  unsigned int NUniverses() const {return fUnivs.size();}
20  Ratio Universe(unsigned int i) const
21  {
22  assert(i < fUnivs.size());
23  return fUnivs[i];
24  }
25 
26  TGraphAsymmErrors* ErrorBand() const;
27 
29  EnsembleRatio operator*(const EnsembleRatio& rhs) const;
30 
32  EnsembleRatio operator/(const EnsembleRatio& rhs) const;
33 
34  protected:
36  std::vector<Ratio> fUnivs;
37  };
38 
40  const EnsembleSpectrum& rhs)
41  {
42  return EnsembleRatio(lhs, rhs);
43  }
44 }
EnsembleRatio & operator/=(const EnsembleRatio &rhs)
EnsembleRatio operator/(const EnsembleRatio &rhs) const
process_name opflashCryoW ana
TGraphAsymmErrors * ErrorBand() const
EnsembleRatio & operator*=(const EnsembleRatio &rhs)
Ratio Universe(unsigned int i) const
Definition: EnsembleRatio.h:20
Ratio Nominal() const
Definition: EnsembleRatio.h:18
EnsembleRatio operator/(const EnsembleSpectrum &lhs, const EnsembleSpectrum &rhs)
Definition: EnsembleRatio.h:39
EnsembleRatio(const EnsembleSpectrum &nom, const EnsembleSpectrum &denom)
Represent the ratio between two spectra.
Definition: Ratio.h:8
unsigned int NUniverses() const
Definition: EnsembleRatio.h:19
std::vector< Ratio > fUnivs
Definition: EnsembleRatio.h:36
EnsembleRatio operator*(const EnsembleRatio &rhs) const