ATLAS Offline Software
Public Member Functions | Public Attributes | List of all members
Result Struct Reference
Collaboration diagram for Result:

Public Member Functions

bool operator== (const Result &) const
 
void Print () const
 

Public Attributes

float value = 0
 
float statUp = 0
 
float statDown = 0
 
std::map< CP::SystematicVariation, float > variations
 

Detailed Description

Definition at line 48 of file fbtTestBasics.cxx.

Member Function Documentation

◆ operator==()

bool Result::operator== ( const Result rhs) const

Definition at line 276 of file fbtTestBasics.cxx.

277 {
278  auto compare = [&](auto x1, auto x2) -> bool
279  {
280  bool closeEnough = std::fabs(x1 - x2) < std::max(1e-5, 1e-3 * std::min(std::fabs(x1), std::fabs(x2)));;
281  if(!closeEnough)
282  {
283  std::cout << "ERROR: found different values for the equality test: " << x1 << " vs " << x2 << std::endl;
284  }
285  return closeEnough;
286  };
287  FBT_CHECK( compare(value, rhs.value) );
288  FBT_CHECK( compare(statUp, rhs.statUp) );
290  FBT_CHECK( variations.size() == rhs.variations.size() );
291  for(auto& kv : variations)
292  {
293  auto itr = rhs.variations.find(kv.first);
294  FBT_CHECK( itr != rhs.variations.end() );
295  FBT_CHECK( compare(kv.second, itr->second) );
296  }
297  return true;
298 }

◆ Print()

void Result::Print ( ) const

Definition at line 300 of file fbtTestBasics.cxx.

301 {
302  std::cout << "Result: total yield = " << value << " +" << statUp << " -" << statDown << std::endl;
303  for(auto& kv : variations)
304  {
305  std::cout << " variation " << kv.first.name() << " = " << kv.second << std::endl;
306  }
307 }

Member Data Documentation

◆ statDown

float Result::statDown = 0

Definition at line 50 of file fbtTestBasics.cxx.

◆ statUp

float Result::statUp = 0

Definition at line 50 of file fbtTestBasics.cxx.

◆ value

float Result::value = 0

Definition at line 50 of file fbtTestBasics.cxx.

◆ variations

std::map<CP::SystematicVariation, float> Result::variations

Definition at line 51 of file fbtTestBasics.cxx.


The documentation for this struct was generated from the following file:
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
plotBeamSpotCompare.x1
x1
Definition: plotBeamSpotCompare.py:216
Amg::compare
std::pair< int, int > compare(const AmgSymMatrix(N) &m1, const AmgSymMatrix(N) &m2, double precision=1e-9, bool relative=false)
compare two matrices, returns the indices of the first element that fails the condition,...
Definition: EventPrimitivesHelpers.h:109
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
plotBeamSpotCompare.x2
x2
Definition: plotBeamSpotCompare.py:218
Result::variations
std::map< CP::SystematicVariation, float > variations
Definition: fbtTestBasics.cxx:51
FBT_CHECK
#define FBT_CHECK(x)
Definition: fbtTestBasics.cxx:46
Result::value
float value
Definition: fbtTestBasics.cxx:50
Result::statDown
float statDown
Definition: fbtTestBasics.cxx:50
Result::statUp
float statUp
Definition: fbtTestBasics.cxx:50