ATLAS Offline Software
SonnenscheinEngine.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 #ifndef SONNENSCEINENGINE_H_
6 #define SONNENSCEINENGINE_H_
7 
8 #include <vector>
9 #include <string>
10 #include <utility>
11 
12 #include "TLorentzVector.h"
13 
14 namespace top {
25  public:
30 
35 
48  std::vector<std::pair<TLorentzVector, TLorentzVector> > solve(const TLorentzVector& me_t_lp,
49  const TLorentzVector& me_t_b, double mass_t,
50  double mass_wp, const TLorentzVector& me_tbar_lm,
51  const TLorentzVector& me_tbar_bbar, double mass_tbar,
52  double mass_wm, double me_mex, double me_mey) const;
53  private:
63  std::vector<double> solveQuartic(double h0, double h1, double h2, double h3, double h4) const;
64 
73  std::vector<double> solveCubic(double s1, double s2, double s3) const;
74 
83  std::vector<double> solveQuadratic(double a, double b, double c) const;
84 
91  double sign(double a) const;
92 
94  bool m_debug;
95  };
96 }
97 
98 #endif
TileDCSDataPlotter.h0
h0
Definition: TileDCSDataPlotter.py:873
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
top::SonnenscheinEngine::solveQuadratic
std::vector< double > solveQuadratic(double a, double b, double c) const
Another Ronseal (google it) of a function.
Definition: SonnenscheinEngine.cxx:504
top::SonnenscheinEngine::solve
std::vector< std::pair< TLorentzVector, TLorentzVector > > solve(const TLorentzVector &me_t_lp, const TLorentzVector &me_t_b, double mass_t, double mass_wp, const TLorentzVector &me_tbar_lm, const TLorentzVector &me_tbar_bbar, double mass_tbar, double mass_wm, double me_mex, double me_mey) const
Does the real work.
Definition: SonnenscheinEngine.cxx:20
read_hist_ntuple.h1
h1
Definition: read_hist_ntuple.py:21
top::SonnenscheinEngine::solveQuartic
std::vector< double > solveQuartic(double h0, double h1, double h2, double h3, double h4) const
Solve a quartic.
Definition: SonnenscheinEngine.cxx:399
Powheg_tt_mtop_common.mass_t
mass_t
Definition: Powheg_tt_mtop_common.py:107
top::SonnenscheinEngine
Rewrite the top and anti-top decays as a quartic polynomial using top and W mass constraints.
Definition: SonnenscheinEngine.h:24
top::SonnenscheinEngine::m_debug
bool m_debug
Print a load of debug information (probably not by default, right)?
Definition: SonnenscheinEngine.h:94
ReadCellNoiseFromCoolCompare.s3
s3
Definition: ReadCellNoiseFromCoolCompare.py:380
top::SonnenscheinEngine::SonnenscheinEngine
SonnenscheinEngine()
Does nothing except sets the default flag to false.
Definition: SonnenscheinEngine.cxx:14
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
top::SonnenscheinEngine::solveCubic
std::vector< double > solveCubic(double s1, double s2, double s3) const
Solves a cubic.
Definition: SonnenscheinEngine.cxx:458
top::SonnenscheinEngine::sign
double sign(double a) const
Is a number positive or negative.
Definition: SonnenscheinEngine.cxx:527
a
TList * a
Definition: liststreamerinfos.cxx:10
ReadCellNoiseFromCoolCompare.s2
s2
Definition: ReadCellNoiseFromCoolCompare.py:379
top::SonnenscheinEngine::~SonnenscheinEngine
~SonnenscheinEngine()
Does nothing.
Definition: SonnenscheinEngine.cxx:17
python.compressB64.c
def c
Definition: compressB64.py:93